1. 程式人生 > 實用技巧 >js統計字串中每個字元出現的次數和列出出現頻率最高的字元

js統計字串中每個字元出現的次數和列出出現頻率最高的字元

考慮到出現頻率最高的字元可能有多個,所以需要一個數組來儲存出現頻率最高的字元,再通過join方法轉成字串

 1 var str = 'kkkkadsfdsf23dfds中中諾防守打法睡得晚讓34 水電費水電費來了 !%#¥%#'
 2     var map = {}
 3     var num = 0
 4     var maxStr = ''
 5     var resArr = []
 6     for(var i=0; i<str.length; i++) {
 7         if(map[str[i]]) {
 8             map[str[i]].num++
 9
}else{ 10 map[str[i]] = {num: 1} 11 } 12 } 13 for(var key in map) { 14 console.log('字元:' + key + ',出現的次數為:' + map[key].num) 15 if(map[key].num > num) { 16 resArr = [key] 17 num = map[key].num 18 } else if(map[key].num == num) {
19 resArr.push(key) 20 num = map[key].num 21 } 22 } 23 maxStr = resArr.join(',') 24 console.log('出現頻率最高的字元是:' + maxStr + ',出現次數為:' + num)