arguments.length在for循环的意思?

不太理解这段代码的意思? 求大神解

function sum(){
    var sumg=0;
    for(var i=0;i<arguments.length;i++){
        sumg+=arguments[i];
    }
    return sumg;
}
alert(sum(1,2,3,4,5));
阅读 3k
2 个回答

arguments 就是参数的意思
这个函数是为了求和,所以参数的数量不是固定的,可能是 sum(1,2),可能是 sum(1,2,3)
既然参数不是固定的
那么我们就需要获取参数
再看下面这段代码

for(var i=0;i<arguments.length;i++){
    sumg+=arguments[i];
}

比如我们输入 sum(1,2)
这时 arguments.length=2
arguments[i] 的值分别是12

这就达到了传参的目的

arguments是当前函数的一个内置属性,它是一个类数组,里面保存传入函数的实参,长度即传入实参的个数,这段代码的意思就是求1+2+3+4+5的值

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题