網站首頁 編程語言 正文
方法一: 通過for循環的方法統計一個字符串出現次數
-
首先,定義了一個字符串
str
,其值為'abcbdcbdscc'
。 -
創建了一個空對象
obj
,用于存儲字符出現次數的統計結果。 -
使用
for
循環遍歷字符串str
中的每個字符。在每次循環迭代時,使用charAt
方法獲取當前索引i
處的字符,并將其賦值給變量char
。 -
檢查對象
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方法統計出一個字符串出現次數
-
使用
split('')
方法將字符串str
拆分為字符數組。這將創建一個包含每個字符的數組,例如['a', 'b', 'c', 'b', 'd', 'c', 'b', 'd', 's', 'c', 'c']
。 -
調用數組的
reduce
方法。reduce
方法接受一個回調函數和一個初始值,用于對數組元素進行迭代和累積操作。 -
在回調函數中,使用了三元條件運算符。首先,檢查累積值對象
prev
中是否已經存在屬性item
(當前迭代的字符)。如果prev[item]
存在,則將其值加一(prev[item]++
)。如果不存在,則將屬性item
添加到prev
對象中,并將其初始值設置為 1(prev[item] = 1
)。 -
reduce
方法的初始值為一個空對象{}
,作為累積值prev
的初始狀態。 -
循環結束后,
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
- 上一篇:沒有了
- 下一篇:沒有了
相關推薦
- 2022-05-29 C#中使用HttpPost調用WebService的方法_C#教程
- 2022-06-10 Asp.Net?Core使用Ocelot結合Consul實現服務注冊和發現_實用技巧
- 2022-04-08 WPF中Style樣式及其觸發器_基礎應用
- 2022-08-22 Python3.9用pip安裝wordcloud庫失敗的解決過程_python
- 2022-11-13 python學習之whl文件解釋與安裝詳解_python
- 2022-12-22 Python進階之import導入機制原理詳解_python
- 2022-01-04 微信小程序內部A頁面向內嵌H5頁面跳轉,并且傳參
- 2022-11-01 Golang解析yaml文件操作指南_Golang
- 欄目分類
-
- 最近更新
-
- window11 系統安裝 yarn
- 超詳細win安裝深度學習環境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區別,Jav
- spring @retryable不生效的一種
- Spring Security之認證信息的處理
- Spring Security之認證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權
- redisson分布式鎖中waittime的設
- maven:解決release錯誤:Artif
- restTemplate使用總結
- Spring Security之安全異常處理
- MybatisPlus優雅實現加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務發現-Nac
- Spring Security之基于HttpR
- Redis 底層數據結構-簡單動態字符串(SD
- arthas操作spring被代理目標對象命令
- Spring中的單例模式應用詳解
- 聊聊消息隊列,發送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠程分支