亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

統計字符串

標簽:
JavaScript

一:统计每个字符出现的次数

/*
* 统计各个字符出现的次数
* 思路:
*    1. 定义一个空对象
*    2. 循环数组,如果对象的key存在,就给这个key的值+1,否则key的值就为1
* */function count(str){   let obj = {}   let countArr = []   let result = {}   for(let i=0;i<str.length;i++){
       obj[str[i]]?obj[str[i]]+=1:obj[str[i]]=1
   }   return obj
}

二:统计出现次数相同的是哪几项

function count(str){   let obj = {}   let countArr = []   let result = {}   for(let i=0;i<str.length;i++){
       obj[str[i]]?obj[str[i]]+=1:obj[str[i]]=1
   }   for(key in obj){        // 每个字符出现的次数
       countArr.push(obj[key])        // 去重后的次数
       countArr = [...new Set(countArr)]
   }   for(let i=0;i<countArr.length;i++){       let arr2 = []       for(key in obj){           if(countArr[i]==obj[key]){
               arr2.push(key)
               result[countArr[i]] = arr2
           }
       }
   }   console.log(result)
}
count(str)

三:统计出现次数最多的字符

/*
* 统计出现最多的字符
* 注意:要考虑有多个字符出现次数相同的情况
* 思路:
*   1. 首先定义一个对象,统计出所有的字符出现的次数
*   2. 循环该obj,将value===max的找出来,放到一个数组中,再展示出来
* */function maxCount(str){    let obj = {};    let max = 1;    let arr = [];    for(let i=0;i<str.length;i++){
        obj[str[i]]?obj[str[i]]+=1:obj[str[i]]=1
    }    // 循环得到最多的次数
    for(key in obj){        if(max<obj[key]){
            max = obj[key]
        }
    }    for(key in obj){        if(obj[key] === max){
            arr.push(key)
        }
    }    console.log("出现最多的字符是:"+arr + ",出现的次数是:" +max+"次")
}
maxCount(str)

四:统计指定字符出现的次数

/*
* 判断某个字符出现的次数
* 方法一思路:
*   先将字符串按照指定字符用split()切割成数组
*   切割后的数组最后一个是不包含该字符的
* 方法二思路:
*   用字符串的match()方法
* */方法一:function count1(str,char){    var len = str.split(char).length-1
    return len
}console.log(count1(str,"j"))  

方法二:console.log(("jj222ddd".match(new RegExp("j","g")) || []).length)

五:第一个重复的字符

function firstRepeat(str){    let obj = {}    for(let i=0;i<str.length;i++){
        obj[str[i]]?obj[str[i]]+=1:obj[str[i]]=1
    }    for(key in obj){        if(obj[key]<=1){console.log("no repeat!")}        if(obj[key]>=2){            console.log("第一个重复的是:"+key);            break
        }
    }
}
firstRepeat("112fff4")



作者:椰果粒
链接:https://www.jianshu.com/p/6c3d5c077d0e


點擊查看更多內容
TA 點贊

若覺得本文不錯,就分享一下吧!

評論

作者其他優質文章

正在加載中
  • 推薦
  • 評論
  • 收藏
  • 共同學習,寫下你的評論
感謝您的支持,我會繼續努力的~
掃碼打賞,你說多少就多少
贊賞金額會直接到老師賬戶
支付方式
打開微信掃一掃,即可進行掃碼打賞哦
今天注冊有機會得

100積分直接送

付費專欄免費學

大額優惠券免費領

立即參與 放棄機會
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號

舉報

0/150
提交
取消