0
示例代碼與實際結果和瀏覽器版本(用戶代理):爲什麼JavaScript在第一次迭代之後會減少函數更改參數?
> [{count:1},{count:2},{count:3}].reduce(function(prev,curr){console.log(arguments);return 5;})
[Object, Object, 1, Array[3]]
[5, Object, 2, Array[3]]
5
> navigator.appVersion
"5.0 (Macintosh; Intel Mac OS X 10_11_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.106 Safari/537.36"
示例代碼與預期結果:
-> [{count:1},{count:2},{count:3}].reduce(function(prev,curr){console.log(arguments);return 5;})
[0, Object, 0, Array[3]]
[5, Object, 1, Array[3]]
[5, Object, 2, Array[3]]
5
MDN鏈接:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/Reduce 另一個鏈接:https://danmartensen.svbtle.com/javascripts-map-reduce-and-filter#reduce_1