在js中统计字符串中出现最多的字符,出现的次数,哪个字符

// 出现最多次数的字符是哪一个,有多少次
        var str='javascript'
        // 如何统计每一个字符出现的次数
        // {j:1,a:2}
        // 准备一个空对象,用于保存每个字符出现次数
        var obj={}
        // 声明变量,保存最大次数
        var max=1
        // 遍历字符串,得到每个字符
        for(var i=0;i<str.length;i++){
            // console.log(str[i])
            var char=str[i] //每个字符
            // 判断对象中是否含有这个字符属性
            // 如果没有,这添加该属性,并赋值为1
            if(obj[char]===undefined){
                obj[char]=1
            }else{
                // 否则已经存在,让这个属性值加1 
                obj[char]++
                // 每次加1,判断是否超过了最大次数
                // 就把次数保存到max
                if(obj[char]>max){
                    max=obj[char]
                }
            }
        }
        //console.log(obj)
        console.log(max)
        // 遍历对象obj,查找max对应的字符有哪些
        for(var k in obj){
            // k 属性名,也就是每个字符
            // obj[k]  属性值,也就是字符的次数
            ///console.log(k,obj[k])
            //查找max对应的字符有哪些
            if(obj[k] === max){
                console.log(k)
            }
        }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值