先贴代码:
var str = "aaaaaaaaaabbbbaabbcccc";
var obj = {};//定义一个对象,利用对象的属性唯一性
var sstr=str.split("");//因为需要他的索引位置,所以用split方法将它转成数组
var num=[];//记录 索引位置记录的数组对象
var max = null;//记录最多出现的次数
for (var i = 0; i<str.length; i++) {
var char = str.charAt(i);
if (obj[char])
{
obj[char]++;//对象的次数+1
}
else
{
obj[char] = 1;
}
}
for (var key in obj) {
if (max < obj[key]) {
max = obj[key];
console.log("最多的字符是" + key);
console.log("次数是" + max);
for(var j=0;j<sstr.length;j++)
{
j=this.j;//如果使用es6语法let就不需要这样定义
if(sstr[j]==key)
{
num.push(j);
}
}
console.log("下标为"+num)
}
}