Умножение массивов в Javascript - PullRequest
0 голосов
/ 18 декабря 2018

Я пытаюсь умножить дочерние элементы массива.Пожалуйста, посмотрите приведенный ниже код и дайте мне знать, можем ли мы провести дополнительную оптимизацию.

Примечание: - Я хочу поместить умноженное значение дочерних массивов в другой массив.

Можете ли выпожалуйста, помогите мне с этим.

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 голосов
/ 18 декабря 2018

Лучший способ сделать это - использовать map и reduce следующим образом:

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);

Я не уверен, что вы подразумеваете под "оптимизацией", но это то, что вы ищете?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...