JS陣列方法reduce的用法例項分析
阿新 • • 發佈:2020-03-04
本文例項講述了JS陣列方法reduce的用法。分享給大家供大家參考,具體如下:
陣列方法 reduce 用來迭代一個數組,並且把它累積到一個值中。
使用 reduce 方法時,你要傳入一個回撥函式,這個回撥函式的引數是一個 累加器 (比如例子中的 previousVal) 和當前值 (currentVal)。
reduce 方法有一個可選的第二引數,它可以被用來設定累加器的初始值。如果沒有在這定義初始值,那麼初始值將變成陣列中的第一項,而 currentVal 將從陣列的第二項開始。
使用 reduce 方法來讓 array 中的所有值相加
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>reduce的使用</title> </head> <body> <script> var arr = [1,2,3,4,5]; sum = arr.reduce(function(prev,cur,index,arr) { //輸出的是第一項的值或上一次疊加的結果,正在被處理的元素,正在被處理的元素的索引值 console.log(prev,index); return prev + cur; }) console.log(arr,sum); //輸入陣列本身和最後的結果 </script> </body> </html>
控制檯輸出:
var numbers = [15.5,2.3,1.1,4.7]; function getSum(total,num) { return total + Math.round(num); } function myFunction(item) { console.log(numbers.reduce(getSum,0));//0 傳遞給函式的初始值 } myFunction()//輸出24
感興趣的朋友可以使用線上HTML/CSS/JavaScript程式碼執行工具:http://tools.jb51.net/code/HtmlJsRun測試上述程式碼執行效果。
更多關於JavaScript相關內容感興趣的讀者可檢視本站專題:《JavaScript陣列操作技巧總結》、《JavaScript遍歷演算法與技巧總結》、《javascript面向物件入門教程》、《JavaScript數學運算用法總結》、《JavaScript資料結構與演算法技巧總結》及《JavaScript錯誤與除錯技巧總結》
希望本文所述對大家JavaScript程式設計有所幫助。