判断一个字符串中出现次数最多的字符,并统计次数(新人不得不看)

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

借助对象来存放字符,以及对应出现的次数

 <script>
           function num (str){
            //    首先定义一个空对象
            var a = {};
            // 然后在把我们传来的字符串进行分隔返回一个数组
            var b = str.split("");  
           // (49) ["d", "a", "f", "s", "f", "s", "f", "a",  "f", "f"....]
              // key为元素   值为个数 然后在对数组进行遍历
            for (let i = 0; i < b.length; i++) {
              //  这个是利用我们的对象中key不能重复
                if(a[b[i]]){
                    a[b[i]]++;
                }else{
                    a[b[i]] = 1;
                }
            }
            console.log(a);
    //    我们的a会返回所有的字符串的对象里面的key是我们的字符,数量是值
            // 通过比较找出最大的
            var maxLetter = "";
          //  定义一个 变量用来接收我们最终的出现最多的一个字符
            var levelNum = 0;
           // 定义一个变量用来接收我们的出现最多的次数
            for (const k in a) {
                //{d: 2, a: 6, f: 11, s: 7, q: 2, …}
                if(a[k] > levelNum){  //第一次是2>0   ||第二次6>2  ...
                    levelNum = a[k];  //然后赋值levelNum=3 ||赋值levelNum=6  ...
                    maxLetter = k;  //maxLetter=d     ||maxLetter=a  ...
                } 
                // 依次比较
            }
                    // f                       11
            console.log(maxLetter + ":" + levelNum);

            return maxLetter;
        }
        var cc = "dafsfsfasfafaqertyyuuioll,mmnnbvvsfsdfqgsafsafgff";
        num(cc);
     </script>

你学费了嘛,都看到这里了可不可以给个赞
在这里插入图片描述

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值