在JavaScript中计算二维数组的总和
我试图解决一个简单的问题:给定一个二维整数数组(由整数数组组成的数组)计算整数的总和。
例如,给定这个二维数组:
[
[1, 0, 0],
[1, 1, 0],
[1, 1, 1]
]
[
[1, 0, 0],
[1, 1, 0],
[1, 1, 1]
]
输出将是6.
这是我尝试过的:
回答
确保您initialValue明确提供(第二个位置参数),0以便求和工作。否则将使用第一个元素,即[1,0,0],它将被转换为字符串1,0,0:
用作第一次回调调用的第一个参数的值。如果未提供 initialValue,则数组中的第一个元素将用作初始累加器值
请参阅此处的工作示例:
const array = [
[1, 0, 0],
[1, 1, 0],
[1, 1, 1]
]
const twoDsum = a => a.reduce((r, x) => r + x.reduce((s, y) => s + y, 0), 0);
console.log(twoDsum(array));