• javascript 写一段代码,判断一个字符串中出现次数最多的字符串,并统计出现的次数


    javascript 写一段代码,判断一个字符串中出现次数最多的字符串,并统计出现的次数

     1 function test(){
     2     var bt = document.getElementById("bt");
     3     bt.addEventListener("click",function(){ 
     4 
     5         var str = "dafdsjkfnaiesdaadsllllllkkkkk444444444444444";
     6         var obj = [];    // 存放结果集的数组,结果中存放 key-value 对象
     7         for(var i =0;i<str.length;i++){    // 遍历字符串 求结果集
     8             var key = str[i];
     9             if(!obj[key]){
    10                 obj[key] = 1;    // 如果结果集中还没有添加该字符 赋初值1
    11             }else{
    12                 obj[key]++;    // 结果集中已添加的字符 数量++
    13             }
    14         }
    15         console.log( typeof obj);
    16         for(key in obj){
    17             console.log(key+obj[key]);
    18             console.log(typeof key );
    19             console.log(typeof obj[key]);
    20         }
    21         
    22         var resultKey=[];    // 存储数量最多的一个或多个字符(有多个字符出现次数相同)
    23         var max = -1;    // 出现的最大数量
    24         for(key in obj){    // 遍历结果集
    25             if(obj[key]==max){    // 多个字符
    26                 resultKey.push(key);
    27             }
    28             
    29             if(obj[key]>max){    // 一个字符
    30                 resultKey = [];    // 数量最多字符数组置空
    31                 resultKey.push(key);    // 添加字符
    32                 max = obj[key];
    33             }
    34         }
    35         console.log("resultKey: "+resultKey+"  "+"count:"+max);
    36 
    37     } );
    38 }
    View Code
  • 相关阅读:
    【shell脚本】批量修改扩展名===modifyExtension.sh
    【shell脚本】打印九九乘法表
    【shell脚本】显示进度条
    【Linux命令】Linux压缩及解压命令
    【Linux命令】ulimit设置最大文件打开数
    【mysql】修改mysql数据库密码
    【raid级别】RAID级别工作模式
    MyBatis之#{} and ${}
    MyBatis之foreach
    强制修改常量的值
  • 原文地址:https://www.cnblogs.com/iGel/p/4464006.html
Copyright © 2020-2023  润新知