Javascript中的数组乘法

时间:2018-12-18 18:45:57

标签: javascript arrays multiplication

我试图乘以子数组元素。您能否看一下下面的代码,让我们知道我们是否可以做更多的优化。

注意:-我想将子数组的相乘值推入另一个数组中。

能帮我吗?

var arr1 = [
    [3, 2],
    [2, 3],
    [4, 5]
]

var sumArr = [];
for (var row = 0; row < arr1.length; row++) {
    var fullRow = arr1[row];
    var val = 1;
    for (var col = 0; col < fullRow.length; col++) {
        val *= fullRow[col];
    }
    sumArr.push(val);

}
console.log(sumArr);

1 个答案:

答案 0 :(得分:1)

执行此操作的最佳方法是使用mapreduce,如下所示:

const arr1 = [ [3, 2]
             , [2, 3]
             , [4, 5]
             ];

const multiply = (a, b) => a * b;

const product = arr => arr.reduce(multiply, 1);

const sumArr = arr1.map(product);

console.log(sumArr);

我不确定“优化”是什么意思,但这是您要寻找的吗?