如何將陣列中的元素求和為單個數組?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 ]
上面,我們遍歷原始陣列的每個元素,然後是每個數字,檢查此索引的總和是否已存在,如果已存在,只需將相應數字新增到其中,否則,將相應數字設為與之相等。
廣告
資料結構
網路
RDBMS
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP