思路:使用charAt()方法可以通過for循環來依次遍歷出字符串中的字符
? ? ?? ? ? 將遍歷出來的字符作為一個空對象的屬性
? ? ? ?? ? ?如果該對象中該屬性沒有值則對其賦值為1
? ? ? ?? ? ?如果該對象中已經有值了則在原基礎上加1
? ? ? ?? ? ?最后通過for in循環比較對象中個屬性值大大小然后將其打印出來
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><script>var str = 'acaaccbadfahj';var x = {}; //創建一個空對象for(var i=0; i<str.length; i++) { //依次遍歷字符串中的字符var chars = str.charAt(i); if(x[chars]) { //判斷對象中該是否被賦值,有則在原基礎上加1x[chars]++;}else { //對象中該屬性沒有值,給該屬性賦值為1x[chars]=1;}}var max=0;for(k in x) { if(max<x[k]) { //比較對象中各屬性的值大大小max=x[k]; //將最大值賦值給maxch=k; //將最大值的屬性賦值ch(ch為全局變量)}}console.log('出現次數最多的為'+ch+':'+max);</script>
</head>
<body></body>
</html>
?