十六、函数

本文介绍了函数的概念,强调了封装的重要性,即减少冗余代码和提高代码复用。通过洗衣机的比喻解释了函数的入口(形参)和出口(返回值)。示例展示了如何创建和执行函数,以及处理形参默认值和返回值的情况。通过具体的代码示例,解释了如何计算两个数的和并进行后续操作。文章还探讨了形参默认值和函数返回值的细节,指出未定义形参的默认值为`undefined`,并强调了返回值在传递内部信息中的关键作用。
摘要由CSDN通过智能技术生成

函数就是一个方法或者一个功能体,函数就是把实现某个功能的代码放到一起进行分装,以后想要操作实现这个功能,只需要把函数执行即可=>"封装 ":减少页面中的冗余代码,提高代码重复使用率(低耦合高内聚)

​ 洗衣机就是一个函数,生产洗衣机就是封装一个函数(把实现某些功能的代码封装进来),生产的时候,不知道用户洗衣服的时候放什么水、衣服、洗衣液,我们需要提供出入口(提供入口在函数中叫做形参,执行的时候放的具体东西函数中叫做实参),洗完衣服需要拿出来,洗衣机提供一个出口(在函数中叫做返回值:把函数处理后的结果能够返回给外面用)

  • 创建函数
    • 形参
    • 返回值
  • 执行函数
    • 实参
  • arguments
  • 函数底层运行机制

创建函数

//ES3-ES5老方式
function[函数名]([形参变量1],...){
    //函数体:基于JS完成
              return [处理后的结果];
}

//执行
[函数名]([实参1],...);



//求两个数的和,算完后乘以10,然后再除以2.。。
let n = 10 + 10;
n = n * 10;
n = n / 2;

//sum代表函数名,代表函数本身
//sum()是让函数执行,代表的是函数执行返回的结果
//n、m是形参,是变量,用来存储执行函数时传递的实参
function sum(n, m) {

    let res = n + m;
    res *= 10;
    res /= 2;
    //return res;
    console.log(res);
}

//12、13是传递给形参变量的值(实参)
sum(12, 13);



//=======================形参的细节=================
/*
    创建函数的时候,设置形参变量,但执行的时候并没有传递对应的实参值,那么形参变量默认值是:undefined
 */

function sum(n, m) {

    //形参默认值处理:如果没有传递形参,给予一个默认值
    if(n===undefined){
        n=0;
    }

    
    //常用
    if(typeof m==='undefined'){
        m=0;
    }


    let res = n + m;
    res *= 10;
    res /= 2;
    //return res;
    console.log(res);
}
sum();                      //NaN
sum(12);                 //NaN
sum(10,20);          //30
sum(10,20,30);       //30




//========================函数中的返回值======================
//函数执行的时候,函数体内部创建的变量,外部是无法获取和操作的(闭包:作用域),如果想要获取内部的信息,必须基于return返回值机制,把信息返回才可以
function sum(n, m) {


    if(n===undefined || m===undefined){
        //函数体中遇到return后面代码不再执行
        return;
    }

   let result=n+m;
   console.log(result);

   //return是把result变量存储的值返回给外面
    //没有写return,函数默认返回值是undefined
   return result;
}

console.log(sum(10,20));



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值