判断一个字符串中出现次数最多的字符,统计这个次数
2017/07/06    标签: javascript字符出现次数统计   

判断一个字符串中出现次数最多的字符,统计这个次数,最优雅是实现方式

实现方式一,需要浏览器支持es6

var str = 'asdfadfdsafda';
var calcNum = {};
for(var i=0;i<str.length;i++){
    calcNum[str[i]]=calcNum[str[i]]||0;
    calcNum[str[i]]++;
}
console.log(Math.max(...Object.values(calcNum)))

实现方式二:

var str="";
var e=str.length;
var g={}
while(e--){
g[str[e]]?g[str[e]]++:g[str[e]]=1;
}
var max={word:'',count:0}
for(var x in g){
g[x]>max.count&&(max.word=x,max.count=g[x])
}
max.count&&console.log(max)

实现方式三:最优雅

var str="sfdasdfdafafafa";
var out=str.split('').sort().join('').match(/(.)\1*/g).sort((a,b)=>b.length-a.length)[0];
console.log(out[0],out.length);