判断一个字符串"abacddafklgjsklafafgafd"中出现次数最多的字符,并统计其次数。
- 利用
charAt()
遍历这个字符串; - 把每个字符都存储给对象,如果对象没有该属性,值设为1,如果存在了 值+1;
- 遍历对象,得到最大值和该字符串;
charAt()
方法用于返回指定索引处的字符。索引范围为从 0 到 length() - 1。
var str="abacddafklgjsklafafgafd";
var obj={};
for(var i=0;i<str.length;i++){
var chars=str.charAt(i);//chars是 字符串的每一个字符
if(obj[chars]){//obj[chars] 得到的是属性值
obj[chars]++;
}else{
obj[chars]=1;
}
}
console.log(obj)
var max=0;
var ch="";
for(var key in obj){
//key 属性名 obj[key]属性值
if(obj[key]>max){
max=obj[key];
ch=key;
}
}
console.log(max);
console.log("出现最多的字符是"+ch+" ,出现了"+max+"次!!")