第一个参数callback函数:pre为上次return的值,next为数组的本次遍历的项
第二个参数为初始值,也是第一个pre
举两个例子
//计算1+2+3+4+5
const reduceArr = [1,2,3,4,5];
const sum = reduceArr.reduce((pre,next) => {
return pre + next
},0)
console.log(sum);//15
//统计元素出现的个数
const nameArr = ['大鱼','小鱼','虾米','大鱼','大鱼','小鱼'];
const totalObj = nameArr.reduce((pre,next){
if(pre[next]){
pre[next]++
}else{
pre[next] = 1
}
return pre
},{})
console.log(totalObj)//{'大鱼':3,'小鱼':2,‘虾米':1}