1. 程式人生 > 程式設計 >教你JavaScript利用charAt()統計出現次數最多的字元和次數

教你JavaScript利用charAt()統計出現次數最多的字元和次數

之前給大家介紹過簡介中charAt()方法的使用,今天通過本文給大家分享統計次數最多的字元和次數的例項程式碼,具體內容如下所示:

判斷一個字串'aabcdobdackoppz'中出現次數最多的字元,並統計其次數

首先我們需要了解一個知識點:(如何判斷物件裡有該屬性)

// http://www.cppcns.com有一個物件,來判斷是否有該屬性 
    // 寫法:物件['屬性名']
    var o = {
        age : 18,sex : '男'
    }
    if(o['sex']){
        console.log('裡面有該屬性');
    } else {
        console.log('沒有該屬性');
    }

核心演算法:

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

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

3.遍歷物件,得到最大值和出現次數。

1.利用charAt方法遍歷陣列 '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] rrQqgxCF
= 1 ; } } console.log(obj); </script>

此時已經把值存在obj物件裡了

教你JavaScript利用charAt()統計出現次數最多的字元和次數

obj物件

2.接下來只需要遍歷物件得到最大值和出現次數

<script>
    //遍歷物件
    var max = 0;
    var ch = '';
    for (var k in obj) {  // 遍歷物件需要使用 for in
        // k 得到的是屬性名,obj[k]得到的是屬性值
        // 此處的屬性名k 只有在迴圈中才有用,所以我們需要建立一個 ch 來儲存 k
        if (obj[k] > max)www.cppcns.com
{ max = obj[k]; ch = k; } } console.log( ch + '出現次數最多' + '次數為:' + max)http://www.cppcns.com; </script>

總結:我們可以理解為所有字元都先執行了obj[chars]=1,相當於建立了物件,然後再判斷是否已經存在物件。

到此這篇關於JavaScript利用charAt()統計出現次數最多的字元和次數的文章就介紹到這了,更多相關js統計次數最多的字元和次數內容請搜尋我們以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援我們!