1.我们可以利用 charAt() 这个方法来遍历这个字符串。
2.把每个字符都存储给对象,如果对象没有该属性,就给它赋值1,如果存在该属性了就加1。
3.遍历对象 , 得到最大值和出现次数。
利用charAt方法遍历数组 'aozisodsdkksdsd' (可以理解为把值存到对象obj里面)
let str = "aozisodsdkksdsd" let obj = {} for (let i = 0; i < str.length; i++) { let chars = str.charAt(i) if (obj[chars]) { obj[chars]++; } else { obj[chars] = 1 } } console.log(obj)
把数据存到obj里 然后打印obj
接下来需要遍历一下得出出现最多的字符和次数
<script> //遍历对象 var max = 0; var ch = ''; for (var k in obj) { // 遍历对象需要使用 for in // k 得到的是属性名,obj[k]得到的是属性值 // 此处的属性名k 只有在循环中才有用 , 所以我们需要创建一个 ch 来存储 k if (obj[k] > max) { max = obj[k]; ch = k; } } console.log( ch + '出现次数最多' + '次数为:' + max); </script>
最后的出(s出现次数最多 次数为4)