1. 程式人生 > >js array.reduce() 陣列的迭代器

js array.reduce() 陣列的迭代器

例子:

[1,2,3,4,5,6].reduce((a,b)=>{
    return a+b
},0)
21

[1,2,3,4,5,6].reduce((a,b)=>{
    return a*b
},1)
720

語法:

reduce 為陣列中的每一個元素依次執行回撥函式,不包括陣列中被刪除或從未被賦值的元素,接受四個引數:初始值(或者上一次回撥函式的返回值),當前元素值,當前索引,呼叫 reduce 的陣列。

arr.reduce(callback,[initialValue])
  • callback (執行陣列中每個值的函式,包含四個引數)

    • previousValue (上一次呼叫回撥返回的值,或者是提供的初始值(initialValue))
    • currentValue (陣列中當前被處理的元素)
    • index (當前元素在陣列中的索引)
    • array (呼叫 reduce 的陣列)
  • initialValue (作為第一次呼叫 callback 的第一個引數。)