在研究reduce方法時,我不太清楚爲什麼傳入的回調需要第三個和第四個參數,索引和數組。在從MDN的例子:爲什麼reduce的回調函數有四個參數?
[0, 1, 2, 3, 4].reduce(function(previousValue, currentValue, index, array) {
return previousValue + currentValue;
});
一種用於陣列很多其他用途的降低方法或下劃線減少功能我只研究利用前兩個參數爲callback
:previousValue
(有時被視爲accumulator
)和currentValue
(又名elem
,當前索引的值)。
爲什麼減少有時用callback
寫四個參數,有時只寫previousValue
和currentValue
?
如果需要參數index
和array
,會出現什麼情況?
如果應用reduce需要第三個或第四個參數,是否應該在函數定義中始終給出所有四個參數以減少?
不需要總是給出所有4個參數,你可以使用前2個參數,如'function(previousValue,currentValue){}'... –