reduce 函數用來累積運算,得到單一值:接收陣列、回呼函數和初始值(可選)。回調函數處理累積器(儲存累積結果)和目前元素。初始值是累積器的起始值,預設為陣列第一個元素。用例包括求和、求平均值、連接數組、過濾和分組。
JS 中reduce 函數的用法
reduce 函數是JavaScript 中的一個函數,用於對一個數組中的元素進行累積操作,最終得到一個單一值。它的用法如下:
<code class="javascript">const result = array.reduce(callback, initialValue);</code>
其中:
回呼函數
#回呼函數接收兩個參數:
initialValue
initialValue 是累積器的初始值,如果沒有指定,則會使用陣列的第一個元素作為初始值。
用法
reduce 函數常用於以下場景:
範例
求和:
<code class="javascript">const numbers = [1, 2, 3, 4, 5]; const sum = numbers.reduce((accumulator, currentValue) => accumulator + currentValue, 0); console.log(sum); // 输出:15</code>
求平均值:
<code class="javascript">const numbers = [1, 2, 3, 4, 5]; const average = numbers.reduce((accumulator, currentValue) => accumulator + currentValue, 0) / numbers.length; console.log(average); // 输出:3</code>
連線陣列:
<code class="javascript">const names = ['John', 'Mary', 'Bob']; const joinedString = names.reduce((accumulator, currentValue) => accumulator + ', ' + currentValue); console.log(joinedString); // 输出:John, Mary, Bob</code>
過濾陣列:
<code class="javascript">const numbers = [1, 2, 3, 4, 5]; const evenNumbers = numbers.reduce((accumulator, currentValue) => { if (currentValue % 2 === 0) { accumulator.push(currentValue); } return accumulator; }, []); console.log(evenNumbers); // 输出:[2, 4]</code>
以上是js中reduce函數的用法的詳細內容。更多資訊請關注PHP中文網其他相關文章!