判断一个字符串中出现次数最多的字符,统计这个次数

  • 先统计每个字符出现的次数
 //    判断一个字符串中出现次数最多的字符,统计这个次数
    var str = 'shaomengmengssss';
    var obj = {};  //新建一个空的对象,让obj中的key为str的值,value为出现的次数
    for (var i = 0; i < str.length; i++) {
        var key = str[i];
        if (obj[key] === undefined) {
            //key不存在,令value值为1
            obj[key] = 1;
        } else {
            //key存在,在原基数上+1
            obj[key]++;
        }
    }
  • 再循环obj的值,寻找最大值
    var maxNum = -1;//字母出现的最大次数
    var maxValue = '';//出现最大次数的字母是
    for (var index in obj) {
        //循环obj的value,value比maxNum大就进行替换,此时key就是出现次数最多的字母
        var value = obj[index];
        if (value > maxNum) {
            maxNum = value;
            maxValue = index;
        }
    }
    console.log(maxValue, maxNum);  // s 5

你可能感兴趣的:(判断一个字符串中出现次数最多的字符,统计这个次数)