日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學無先后,達者為師

網站首頁 編程語言 正文

如何統計一個字符在字符串中出現次數

作者:田小田、 更新時間: 2023-12-14 編程語言

方法一: 通過for循環的方法統計一個字符串出現次數

  1. 首先,定義了一個字符串 str,其值為 'abcbdcbdscc'

  2. 創建了一個空對象 obj,用于存儲字符出現次數的統計結果。

  3. 使用 for 循環遍歷字符串 str 中的每個字符。在每次循環迭代時,使用 charAt 方法獲取當前索引 i 處的字符,并將其賦值給變量 char

  4. 檢查對象 obj 中是否已經存在屬性 char。如果 obj[char] 存在(即 obj 中已經有該字符的計數),則將該屬性值加一(obj[char]++)。否則,將屬性 char 添加到對象 obj 中,并將其初始值設置為 1(obj[char] = 1)。

    <script>
        let str = 'abcbdcbdscc'
        let obj = {}
        for(let i = 0;  i < str.length; i++) {
            let char = str.charAt(i)
            if(obj[char]) {
                obj[char]++
            }else {
                obj[char] = 1
            }
        } 
        console.log(obj)
    </script>

方法二 : 通過reduce方法統計出一個字符串出現次數

  1. 使用 split('') 方法將字符串 str 拆分為字符數組。這將創建一個包含每個字符的數組,例如 ['a', 'b', 'c', 'b', 'd', 'c', 'b', 'd', 's', 'c', 'c']

  2. 調用數組的 reduce 方法。reduce 方法接受一個回調函數和一個初始值,用于對數組元素進行迭代和累積操作。

  3. 在回調函數中,使用了三元條件運算符。首先,檢查累積值對象 prev 中是否已經存在屬性 item(當前迭代的字符)。如果 prev[item] 存在,則將其值加一(prev[item]++)。如果不存在,則將屬性 item 添加到 prev 對象中,并將其初始值設置為 1(prev[item] = 1)。

  4. reduce 方法的初始值為一個空對象 {},作為累積值 prev 的初始狀態。

  5. 循環結束后,count 對象中存儲了字符出現的統計結果。

    <script>
            let str = 'abcbdcbdscc'
            const count = str.split('').reduce((prev,item)=>{
                prev[item] ? prev[item]++ : (prev[item] = 1)
              return  prev
            },{})
            console.log(count)
        </script>

    如果小伙伴們想得出最大值字符和出現次數,循環遍歷即可得到哦。

原文鏈接:https://blog.csdn.net/TZJ999919/article/details/131659027

  • 上一篇:沒有了
  • 下一篇:沒有了
欄目分類
最近更新