常用场景:
- 数组去重
- 数组求和
语法:
arr.reduce(function(prev, cur, index, arr) {...}, init)
其中:
prev:第一次代表init,之后每一次都表示调用回调之后的返回值。
cur:表示当前处理的数组元素
index:表示当前正在处理的元素下标(若init存在,index为0,如果init不存在,index为1)
init:表示初始值
常用的也就是prev、cur、init
使用场景1 - 数组去重
let arr = [2,3,4,4,5]
arr.reduce(function(prev, item) {
!prev.includes(item) && prev.push(item)
return prev
}, []) // [2,3,4,5]
使用场景2 - 数组求和
let arr = [2,3,4]
arr.reduce(function(prev, item) {
return prev + item
}, 0) // 9
对于数组求和,讲个题外的j简单的求和方法
let arr = [2,3,4]
eval(arr.join("+")) // 9
网友评论