【JavaScript】经典练习题03(判断字符串中出现最多的字符)

99 阅读1分钟
var str = 'asdfscb88888888sasaa';
var json = {};

for (var i = 0; i < str. length; i++) {
    if (! json [str. charAt(i)]) {          //charAt():返回指定位置的字符
       //如果第一次出现是undefined
       json [str. charAt(i)] = 1;
       //json:{a:1}、{a:1,s:1}、...
    } else {
       //json中有字符的时候,属性值+1
       json [str. charAt(i)] ++;
       //json:{ a:1,s:2,d:1,f:1,c:1}、...
    }
};

var iMax = 0;
var iIndex = '';

for (var i in json) {
    if(json[i]>iMax) {
         iMax = json[i];
         iIndex = i;
    }
}
console.log('出现次数最多的是:'+iIndex+'出现'+iMax+'次');

总结: 此题考查的是字符串charAt的用法:返回指定位置的字符。

字符串中第一个字符的下标是 0。如果string.charAt(index)中,参数 index 不在 0 与 string.length 之间,该方法将返回一个空字符串。