function findMaxDuplicateChar(str) {
// 定义最大频率
let maxValue = 1;
// 定义出现的字符,有可能频率相等所以是数组
let maxChar = [];
let obj = {};
for (let s = 0; s < str.length; s++) {
let k = str[s];
if (k === " ") continue;
// 利用对象的key做算法,若key(字符)不存在则初始化value(频率)为1,key存在(字符重复)则value(频率)+1
obj[k] = obj[k] ? (++obj[k] ) : 1;
// 如果总是有大于最大的频率 则为一个,// 如果有相等则 并列push到数组里
if (obj[k] >= maxValue) {
obj[k] > maxValue ? (maxChar = [k]) : maxChar.push(k);
maxValue = obj[k];
}
}
maxChar = maxChar.length <= 1 ? maxChar[0] : maxChar;
return { maxValue, maxChar };
}
console.log(findMaxDuplicateChar(str)); //{maxValue:3,maxChar:[6,9]}