查找字符串中重复字符个数

Array.prototype.reduce(callback,initialVal):

例:arr=[0,1,2,3,4];
callback可以传4个参数:
previousValue:上次调用回调参数的值。如果传入initialVal,那么首次previousValue=initialVal,不传则默认为arr[0];
currentValue:数组当前被处理的值。如果传入initialVal,那么首次currentValue=arr[0],不传则为arr[1];
index:当前值的索引。如果传入initialVal,那么首次index=0,不传则为1;
array:传入的数组
initialVal: 可选参数, 作为第一次调用 callback 的第一个参数

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
var str= "abasfsfsfsfssbsw" ;
var arr = str.split('' );
var obj= {};
var info= arr.reduce( function (pre , cur, index ,arr ){
if (index== 1 ){
obj[pre] = 1;
}
if (obj[cur]){
obj[cur] ++ ;
} else {
obj[cur] = 1;
}
return obj;
})
console .log(info);//{a: 2, b: 2, s: 7, f: 4, w: 1}

热评文章