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

Cách tạo danh sách tổng từng phần bằng forEach JavaScript

Chúng ta có một dãy số như thế này -

const arr = [1, 1, 5, 2, -4, 6, 10];

Chúng tôi bắt buộc phải viết một hàm trả về một mảng mới, có cùng kích thước nhưng với eachelement là tổng của tất cả các phần tử cho đến thời điểm đó.

Vì vậy, đầu ra sẽ giống như -

const output = [1, 2, 7, 9, 5, 11, 21];

Hãy viết hàm partSum (). Mã đầy đủ cho chức năng này sẽ là -

Ví dụ

const arr = [1, 1, 5, 2, -4, 6, 10];
const partialSum = (arr) => {
   const output = [];
   arr.forEach((num, index) => {
      if(index === 0){
         output[index] = num;
      }else{
         output[index] = num + output[index - 1];
      }
   });
   return output;
};
console.log(partialSum(arr));

Ở đây, chúng tôi đã lặp lại mảng và tiếp tục gán cho các phần tử của mảng đầu ra một giá trị mới mỗi lần, giá trị là tổng của số hiện tại và số tiền nhiệm của nó.

Đầu ra

Vì vậy, đầu ra cho mã này sẽ là -

[
   1, 2, 7, 9,
   5, 11, 21
]