使用forEach进行乘法运算

时间:2014-03-03 20:58:09

标签: javascript

如果我创建一个像

这样的字符串
mutiples=[1,2,3,4,5]

我希望能够使用.forEach将它们全部加在一起,我该怎么做呢?我最好的猜测是:

var total=0
multiples=[1,2,3,4,5]
multiples.forEach(function(multiply) {
   total*multiply;
});

或     总* =相乘?

2 个答案:

答案 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的设计目的。