Javascript 将变量从数组传递到函数中
我有这个功能:Javascript 将变量从数组传递到函数中,javascript,arrays,function,Javascript,Arrays,Function,我有这个功能: function getTotal () { var args = Array.prototype.slice.call(arguments); var total = 0; for (var i = 0; i < args.length; i++) { total += args[i]; } return total; } 如何通过将numArray中的每个元素作为参数传入来调用函数getTotal getTot
function getTotal () {
var args = Array.prototype.slice.call(arguments);
var total = 0;
for (var i = 0; i < args.length; i++) {
total += args[i];
}
return total;
}
如何通过将
numArray
中的每个元素作为参数传入来调用函数getTotal
getTotal(...numArray);
它称为扩展语法。有关更多信息:您可以使用调用函数。它将数组作为参数传递给函数
函数getTotal(){
var args=Array.prototype.slice.call(参数);
var合计=0;
对于(变量i=0;i为什么不这样做:
function getTotal (args) {
var total = 0;
for (var i = 0; i < args.length; i++) {
total += args[i];
}
return total;
}
var numArray = [1,2,3];
console.log(getTotal(numArray)); //6
函数getTotal(args){
var合计=0;
对于(变量i=0;i
如果您使用spread运算符,您可能还需要对代码进行ES6验证:
function getTotal(...vals){
return vals.reduce((a,b)=>a+b,0);
}
getTotal(...[1,2,4]);
请试试这个。希望能有帮助
var sum = [1, 2, 3, 4, 5].reduce(add, 0);
function add(a, b) {
return a + b;
}
这看起来像是一个家庭作业。>将numArray中的每个元素作为参数传入?当你可以传递数组时,你为什么要这样做?@TimothyGroote这不是我拥有的实际函数,只是它的一个简化版本,主要关注这一个concept@serdar.sanri这不可能是重复的哦,对不起,我会用EN version=)更新答案这个语法太棒了,ty表示,标准apply patternSpread不是运算符,请参阅。请注意,函数getTotal(…vals){}
处的参数是rest元素,而不是spread元素
var sum = [1, 2, 3, 4, 5].reduce(add, 0);
function add(a, b) {
return a + b;
}