如果我创建一个像
这样的字符串mutiples=[1,2,3,4,5]
我希望能够使用.forEach将它们全部加在一起,我该怎么做呢?我最好的猜测是:
var total=0
multiples=[1,2,3,4,5]
multiples.forEach(function(multiply) {
total*multiply;
});
或 总* =相乘?
答案 0 :(得分:3)
var total = 1;
multiples = [ 1, 2, 3, 4 ]
multiples.forEach(function(num) {
total *= num;
});
答案 1 :(得分:2)
.forEach
在这里是错误的功能。你需要的是.reduce:
var multiples = [1, 2, 3, 4];
var total = multiples.reduce(function(prev, curr) {
return prev * curr;
});
虽然你可以用.forEach
来做,但这种类型的累加器模式(遍历整个数组并积累一些值)正是.reduce
的设计目的。