找出字符串里出现次数最多的字符
let str = "dfghjkllkjhgfdfghhjkkjhgffghjklkjhgfdfghjkl";
1. 统计各字符出现次数
1 let obj = {}; 2 for (let i = 0; i < str.length; i++) { 3 const item = str.charAt(i); 4 if (obj[item]) { 5 obj[item]++; 6 } else { 7 obj[item] = 1; 8 } 9 } 10 console.log(obj); //{ d: 3, f: 7, g: 7, h: 8, j: 7, k: 7, l: 4 }
2. 找出最大出现次数的字符
1 let maxObj = { number: 1, name: "" }; 2 for (let i in obj) { 3 if (obj[i] > maxObj.number) { 4 maxObj.number = obj[i]; 5 maxObj.name = i; 6 } 7 } 8 console.log(maxObj); //{ number: 8, name: 'h' }
String.charAt()接收一个索引,和Array[0]一样可以获取到某一项