Computer >> Máy Tính >  >> Lập trình >> Javascript

Làm thế nào để tính tổng các phần tử có cùng chỉ số trong mảng mảng thành một mảng duy nhất? JavaScript

Chúng ta có một mảng các mảng và được yêu cầu viết một hàm nhận trong mảng này và trả về một mảng mới đại diện cho tổng các phần tử tương ứng của mảng ban đầu.

Nếu mảng ban đầu là -

[
   [43, 2, 21],[1, 2, 4, 54],[5, 84, 2],[11, 5, 3, 1]
]

Sau đó, đầu ra phải là -

[60, 93, 30, 55]

Hãy viết một hàm mẫu addArray ()

Mã đầy đủ cho chức năng này sẽ là -

Ví dụ

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));

Đầu ra

Đầu ra trong bảng điều khiển sẽ là -

[60, 93, 30, 55]

Ở trên, chúng tôi lặp lại từng phần tử của mảng ban đầu và sau đó đến từng số, kiểm tra xem tổng của chỉ mục đó đã tồn tại chưa, chúng tôi chỉ thêm số tương ứng vào nó, đồng thời đặt số tương ứng bằng nó.