关于函数的参数

废话少说直接上代码

function add(x, y) {
    var total = x + y;
  alert(total);
return total; } add(5,10);//15

这里是会弹出来 15 的

但是如果这样的

add(2,3,4,5);

这样调用会出现什么??答案是 5 (对,就是5)

为什么?

因为js中形参和实参是可以不一致的 也就是说 你声明变量的时候 用了两个形参 但是你调用函数的时候放了5个 10个 甚至更多 ,js 调用函数的时候也只是会调用你形参的个数 按照顺序来调用

反过来呢?

function add(x, y,z) {
            var total = x + y+z;
            alert(total);
            return total;
}
            add(5,10);

事实证明 如果调用函数时没有提供足够的参数,缺少的参数会被 undefined 替代。

那么我们重写以下,使它可以接收任意个数的参数

function add() {
    var sum = 0;
    for (var i = 0, j = arguments.length; i < j; i++) {
        sum += arguments[i];
    }
    return sum;
}

 add(2, 3, 4, 5)//14
原文地址:https://www.cnblogs.com/ling-du/p/4569232.html