要求:
輸出一個給定字串``中出現次數最多的字符,并統計其次數,
實作思路:
- 利用
charA()遍歷這個字串 - 把每個字符都存盤給物件,如果物件沒有該屬性,就先幅值為1,如果存在了就+1
- 遍歷物件,得到最大值和該字符
- 在遍歷的程序中,把字串中的每個字符作為物件的屬性存盤在物件中,對應的屬性值是該字符出現的次數
代碼實作:
// 1.統計次數
var str = 'abdgdbcaethbganmugthaesqszaphfdvwd';
var obj = {};
// 創建了一個空的物件,存盤字串中的每個字符,屬性:每個字符,屬性值:該字符出現的次數
for (var i = 0; i < str.length; i++) {
// 遍歷字串
var chars = str.charAt(i);
// chars代表字串的每一個字符
if (obj[chars]) {
obj[chars]++;
} else {
obj[chars] = 1;
}
// obj[chars]屬性值:該字符出現的次數
// 如果已經存在,那么次數+1;否則賦值為1
}
console.log(obj);
// 輸出物件obj,顯示每個字符出現的次數
// 2.遍歷物件,找出最大的次數
var max = 0;
var ch = '';
for (var k in obj) {
if (obj[k] > max) {
max = obj[k];
ch = k;
}
}
// k代表屬性:每個字符
// obj[k]代表屬性值:該字符出現的次數
// 將次數最多的字符賦值到ch
console.log('最多的字符是' + ch + ',次數為' + max);
輸出結果:
{a: 5, b: 3, d: 4, g: 3, c: 1, …}
最多的字符是a,次數為5
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/161270.html
標籤:JavaScript
上一篇:JS常用正則
下一篇:JS常用正則
