reduce
reduce(function(pre,cur,index,arr){},data)
- pre:上一次函数执行返回的值,也可以是data赋的初始值;
- cur:当前执行元素
- index:cur的索引
- arr:调用reduce的数组
- data:初始值
var arr=[1,2,3,4,5]
var res=arr.reduce(function(pre,cur,index,arr){
console.log(pre,cur,index);
return pre+cur
})
var arr=[5,0,1,7,6,"name","name"];
//初始值传一个空对象,即第一个pre为对象
var res=arr.reduce(function(pre,cur,index,arr){
var max=0,obj;
if(cur in pre){
pre[cur]++;
if( pre[cur]>max){
max=pre[cur];
obj=cur
}
}else{
pre[cur]=1;
}
console.log(obj,max)
return pre
},{})