这里先补充一下对象的知识点:
例如 var json = {
a:1,
b:2,
c:3
}
console.log(json) // {a:1,b:2,c:3}
console.log(json["a"]) // 1
// 有了上面的列子,开始实现题目的要求
var str = "suibianxiebala";
var json = {};
for(var i = 0; i<str.length; i++){
if(!json[str.charAt(i)]){ // 如果json里面没有这一项 就等于1
json[str.charAt(i)] = 1;
}else{ // 否则就累计加
json[str.charAt(i)]++;
}
}
var iMax = 0; // 定义一个出现次数的变量,初始化为0次
var iStr = ""; // 定义一个变量表示出现次数最多的字符串,初始化为空
for(var i in json){
if(json[i] > iMax){
iMax = json[i];
iStr = i;
}
}
console.log("出现次数最多的字符是:"+iStr+",出现的次数是:"+iMax+"次") // 这样输出的是 i 3次
但是实际上a也是3次, 所以这种写法是有bug的 应该写成下面这样就不会出现这种情况
var iMax = 0;
var iStr = "";
for(var i in json){
if(json[i]>iMax){
iMax = json[i];
}
if(iMax == json[i]){
iStr = i;
console.log("出现次数最多的字符是:"+iStr+",出现的次数是:"+iMax+"次") // 这样输出出来的就是 1 3次; a 3次
}
}