如何将数组中的元素求和为单个数组?JavaScript
我们有一个数组数组,现在需要编写一个函数,这个函数接收此数组,然后返回一个新数组,新数组用于表示原始数组中相应元素的总和。
如果原始数组是 −
[ [43, 2, 21],[1, 2, 4, 54],[5, 84, 2],[11, 5, 3, 1] ]
那么输出应该是 −
[60, 93, 30, 55]
我们来编写一个样例函数 addArray()
此函数的完整代码如下 −
示例
const arr = [ [43, 2, 21],[1, 2, 4, 54],[5, 84, 2],[11, 5, 3, 1] ]; const sumArray = (array) => { const newArray = []; array.forEach(sub => { sub.forEach((num, index) => { if(newArray[index]){ newArray[index] += num; }else{ newArray[index] = num; } }); }); return newArray; } console.log(sumArray(arr));
输出
控制台中的输出为 −
[ 60, 93, 30, 55 ]
上面,我们遍历原始数组的每个元素,然后是每个数字,检查此索引的总和是否已存在,如果已存在,只需将相应数字添加到其中,否则,将相应数字设为与之相等。
广告