[JavaScript] 實作 Array.reduce()

Mars Li
something-about-javascript
1 min readJun 19, 2018

reduce() 方法將一個累加器及陣列中每項元素(由左至右)傳入回呼函式,將陣列化為單一值。

這邊介紹一下 JavaScript Array 裡面的 reduce 方法,用法如下 :

const array1 = [1, 2, 3, 4];
const reducer = (accumulator, currentValue) => accumulator + currentValue;
// 1 + 2 + 3 + 4
console.log(array1.reduce(reducer));
// expected output: 10
// 5 + 1 + 2 + 3 + 4
console.log(array1.reduce(reducer, 5));
// expected output: 15

他其實就是讓你傳入一個函式,這個函式會傳入上一次的結果以及目前索引陣列的值,這個函式需要回傳計算結果,並把計算結果在丟到下一次的計算,一直跑到這個陣列的最後一個值。

介紹完之後我們來實作看看吧 :

--

--