减少多维数字数组

Far*_* AR 1 javascript

如何通过Array.prototype.reduce()函数找到以下多维数组中所有数字的总和:

var arr = [["one",3],["five",15],["ten",30],["twenty",40]];
Run Code Online (Sandbox Code Playgroud)

我知道如何使用for循环,但只是想知道......

Raj*_*amy 8

你可以这样做,

var sum = [["one",3],["five",15],["ten",30],["twenty",40]].reduce(function(a,b){
  return a + b[1];
}, 0);
Run Code Online (Sandbox Code Playgroud)

在上面的代码中,作为第二个参数传递的0是要在计算中使用的初始值.

  • thanx ... 我忘记了 0,这就是为什么它在我的情况下返回 NaN。 (2认同)
  • MDN 没有帮助我理解 .reduce 如何处理二维数组,但这个例子确实...... b[1], (是 3,接下来是 15,然后是 30,然后是 40)作为添加到累加器并返回的值。 (2认同)