一种方法是使用参数。我可以遍历参数数组并返回传递的所有参数的总和。
function sum(){
var sum =0;
for(var i=0;i<arguments.length;i++){
sum += arguments[i];
}
return sum;
}
sum(1,2); // returns 3
sum(1,2,3); // returns 6
有没有不使用循环的其他方法?
最佳答案
其他人通过将 arguments
冗余复制到一个即将被丢弃的数组来提供答案。
相反,您可以一步完成所有操作:
function sum() {
return Array.prototype.reduce.call(arguments, function(a, b) {
return a + b;
}, 0);
}
如果使用 ES2015 是一个选项,您可以有稍微更好的(主观)实现:
const sum = (...args) => [...args].reduce((a, b) => a + b, 0);
关于javascript - 返回传递给函数的所有参数的总和,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38566788/