函数数据类型

函数: 函数名+形参+函数体+执行+实参...

    + 创建函数:形参

    + 函数执行:实参 / arguments / 返回值

                                存储了所有的实参

需求:对求和函数的升级(不确定传递几个数,我们把传递进来的值最后都能求和【过滤非有效数字】)

1.不确定用户到底传递多少个实参(首先不能设置形参变量了,因为我们无法确定设置多少个形参变量),我们可以基于“函数内置的实参集合 arguments”来获取传递的实参信息

        + 不论是否传递实参,也不论是否设定形参,arguments都会存在,不传递实参,arguments是一个空集合,如果传递了实参,所有实参的信息都在arguments集合中存储着

       + arguments集合是一个类数组集合

 


function sum() {

    var total = 0;

    for (var i = 0; i < arguments.length; i++) {

        // item:每一轮循环获取的集合中的指定项内容

        var item = Number(arguments[i]);

        if (isNaN(item)) continue;

        total += item; }

    return total;
} (任意数求和)
var result = sum(10, 20, 30);

console.log(result);


result =sum(10, 20, 30,'40');

console.log(result);


result = sum('AA', 20, 30);

console.log(result);


result = sum();

console.log(result); 

  

 

上一篇:柯里化


下一篇:JavaScript函数参数