在JavaScript中合并并减少多维数字数组

在JavaScript中合并并减少多维数字数组,javascript,Javascript,我在这里搜索了类似的问题,但预期结果不符合我的需要。考虑下面的多维数组。 let list = [ [1, 10, 13, 4], [5, 6, 83, 45], [9, 18, 11, 12] ]; 如何合并所有值以生成以下结果 const output = [15, 34, 107, 61]; 您可以通过将数字相加来减少阵列: list.reduce((a, b) => a.map((n, i) => n + b

我在这里搜索了类似的问题,但预期结果不符合我的需要。考虑下面的多维数组。

let list = [
   [1,   10,    13,    4],
   [5,   6,    83,    45],
   [9,   18,   11,   12]
];
如何合并所有值以生成以下结果

const output = [15, 34, 107, 61];

您可以通过将数字相加来减少阵列:

 list.reduce((a, b) => a.map((n, i) => n + b[i]))

(如果阵列长度不同,则此操作将失败)

您可以通过将数字相加来减少阵列:

 list.reduce((a, b) => a.map((n, i) => n + b[i]))

(如果数组长度不同,则此操作将失败)

好消息是它可以工作,您能否简单解释一下,以便我理解它为什么可以工作?@jermaine您应该先阅读关于reduce的内容,MDN有一个很好的解释,也可能有帮助好消息是它可以工作,你能给我一个简单的解释,让我明白它为什么会工作吗?@jermaine你应该先读一下reduce,MDN有一个很好的解释,也可能会有帮助