欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

教你JavaScript利用charAt()統(tǒng)計出現(xiàn)次數(shù)最多的字符和次數(shù)

 更新時間:2021年08月11日 10:27:04   作者:ae T  
這篇文章主要介紹了JavaScript利用charAt()統(tǒng)計出現(xiàn)次數(shù)最多的字符和次數(shù)的操作方法,本文以判斷一個字符串'aabcdobdackoppz'中出現(xiàn)次數(shù)最多的字符,并統(tǒng)計其次數(shù)為例,通過實例代碼給大家詳細(xì)介紹,需要的朋友參考下吧

之前給大家介紹過簡介JavaScript中charAt()方法的使用,今天通過本文給大家分享js統(tǒng)計次數(shù)最多的字符和次數(shù)的實例代碼,具體內(nèi)容如下所示:

判斷一個字符串'aabcdobdackoppz'中出現(xiàn)次數(shù)最多的字符,并統(tǒng)計其次數(shù)

首先我們需要了解一個知識點(diǎn):(如何判斷對象里有該屬性)

// 有一個對象,來判斷是否有該屬性 
    // 寫法:對象['屬性名']
    var o = {
        age : 18 ,
        sex : '男'
    }
    if(o['sex']){
        console.log('里面有該屬性');
    } else {
        console.log('沒有該屬性');
    }

核心算法:

1.我們可以利用 charAt() 這個方法來遍歷這個字符串。

2.把每個字符都存儲給對象,如果對象沒有該屬性,就給它賦值1,如果存在該屬性了就加1。

3.遍歷對象 , 得到最大值和出現(xiàn)次數(shù)。

1.利用charAt方法遍歷數(shù)組 'aabcdobdackoppz' (可以理解為把值存到對象obj里面)

<script>    
    var str = 'aabcdobdackoppz' ;
    var obj = {} ;
    for(var i = 0 ; i < str.length ; i++){
        var chars = str.charAt(i) // chars 是 字符串的每一個字符
        if(obj[chars]){ // o[chars] 得到的是屬性
            obj[chars]++
        } else {
            obj[chars] = 1 ;
        }
    }
    console.log(obj);
 
</script>

此時已經(jīng)把值存在obj對象里了

obj對象

2.接下來只需要遍歷對象得到最大值和出現(xiàn)次數(shù)

<script>
    //遍歷對象
    var max = 0;
    var ch = '';
    for (var k in obj) {  // 遍歷對象需要使用 for in
        // k 得到的是屬性名,obj[k]得到的是屬性值
        // 此處的屬性名k 只有在循環(huán)中才有用 , 所以我們需要創(chuàng)建一個 ch 來存儲 k
        if (obj[k] > max) {
            max = obj[k];
            ch = k;
        }
    }
    console.log( ch + '出現(xiàn)次數(shù)最多' + '次數(shù)為:' + max);
</script>

總結(jié):我們可以理解為所有字符都先執(zhí)行了obj[chars]=1,相當(dāng)于創(chuàng)建了對象,然后再判斷是否已經(jīng)存在對象。

到此這篇關(guān)于JavaScript利用charAt()統(tǒng)計出現(xiàn)次數(shù)最多的字符和次數(shù)的文章就介紹到這了,更多相關(guān)js統(tǒng)計次數(shù)最多的字符和次數(shù)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評論