在 JavaScript 中將陣列數字轉換為累加和陣列


我們有這樣一個數組數字 −

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

我們需要編寫一個函式,該函式返回一個新陣列,該陣列大小相同,但每個元素都是此點之前的各個元素之和。

因此,輸出應如下所示 −

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

因此,讓我們編寫函式 partialSum(),

此函式的完整程式碼如下 −

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

在這裡,我們遍歷了陣列並持續為輸出陣列的元素分配一個新值,該值是當前數字及其前驅之和。

控制檯中程式碼的輸出將為 −

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

更新於:10-10-2020

506 瀏覽量

開啟您的職業生涯

完成課程獲得認證

開始
廣告
© . All rights reserved.