首页 > 代码库 > 求一个字符串中出现最多的字符和次数

求一个字符串中出现最多的字符和次数

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
    <script>
        var str = "zhaochucichuzuiduodezifu";
        var json = {};
        for (var i = 0; i < str.length; i++) {
        
        var char = str.charAt(i);
        //char就是对象json的一个属性,json[char]是属性值,json[char]控制出现的次数
        if (json[char]) { 
        //次数加1
        json[char]++; 
        } else {
        //若第一次出现,次数记为1
        json[char] = 1; 
        }
        }
        console.log(json); //输出的是完整的对象,记录着每一个字符及其出现的次数
        //遍历对象,找到出现次数最多的字符和次数
        var max = 0;
        var maxChar = null;
        for (var key in json) {
        if (max < json[key]) {
        //max始终储存次数最大的那个
        max = json[key]; 
        //那么对应的字符就是当前的key
        maxChar = key; 
        }
        }
        console.log("最多的字符是" + maxChar);
        console.log("出现的次数是" + max);
</script>
    
    
    
</head>
<body>
    <div id=‘box‘></div>
</body>
</html>

 

求一个字符串中出现最多的字符和次数