每个元素乘以数组中的每个元素

时间:2018-01-20 16:35:07

标签: arrays for-loop

的JavaScript

我需要用for循环执行此操作, 我想将每个元素乘以数组(2 * 5 * 10 * 12)

示例

var arrNum = [2,5,10,12]

var sum = 0

for(var i = 0; i < arrNum.length; i++) {

sum = arrNum[i] * // I don't know what to do

任何想法:)?

我做了类似的事

var arrNum = [2,5,10,12]

var sum = 0
var temp = 1

for(var i = 0; i < arrNum.length; i++){
temp *=arrNumbers[i]
if(i== arrNumbers.length-1){
sum = temp 
}
}

5 个答案:

答案 0 :(得分:0)

var result = [2,5,10,12].reduce(function(a,b){return a*b;});

我认为你的问题需要更多解释,我想你是在JS环境中。

注意ES6的高级功能;我建议深入了解所有这些高级操作。

请注意,在幕后操作将完全是一个for循环,但减少隐藏了复杂性并使一切更清洁。

答案 1 :(得分:0)

尝试这样的事情:

var total = 1;

for (var i = 0; i < arrNum.length; i++) {
    total *= arrNum[i];
}

答案 2 :(得分:0)

首先,您将始终将结果设为0,因为

你的起始和条件是0然后乘以数组中的任何数字总是会给你0。

这是你应该做的 -

var sum = 1

for(var i = 0; i < arrNum.length; i++) {

    sum = arrNum[i] * sum;

}

答案 3 :(得分:0)

将数组的第一个元素放在总和中 然后将sum *数组从i开始,从1开始,因为我们将第一个元素放在sum中,然后将结果放回总和

&#13;
&#13;
var arrNum = [2,5,10,12]

var sum = arrNum[0]

for(var i = 1; i < arrNum.length; i++) {
  sum = sum * arrNum[i];
}

console.log(sum);
&#13;
&#13;
&#13;

答案 4 :(得分:0)

I did something like this

var arrNum = [2,5,10,12]

var sum = 0
var temp = 1

for(var i = 0; i < arrNum.length; i++){
temp *=arrNumbers[i]
if(i== arrNumbers.length-1){
sum = temp 
}
}

它有效,但var sum不是真正的0 ...