我试图写一个map/ reduce以获得数组中每个数组的平均值。
例如。
[[1][2,3][4,5,6,7]] => [1, 2.5, 5.5]
Run Code Online (Sandbox Code Playgroud)
现在这是我的代码,结果是数组数组:
result.map(array => {
return array.reduce((a, b) => (a + b)) / array.length;
})
Run Code Online (Sandbox Code Playgroud)
[[1][2,3][4,5,6,7]] => [1, 2.5, 5.5]
Run Code Online (Sandbox Code Playgroud)
非常感谢获得所需输出的任何帮助。就目前而言,我的输出减少到的数组NaN而不是平均值。
您需要结束括号。
通过Array#reduce与长度未知的数组一起使用,您需要获取一个起始值,在这种情况下,长度为零。
var result = [[1], [2, 3], [4, 5, 6, 7]],
avg = result.map(array => array.reduce((a, b) => a + b, 0) / array.length);
// ^^^ ^
// optional required
console.log(avg);Run Code Online (Sandbox Code Playgroud)