// 判断一个字符串出现次数最多的字符,并统计其次数 // 核心算法:利用charAt()遍历字符串 // 把每个字符都存储给对象,如果对象没有这个属性,则对应属性值为1,如果存在这个属性,则对应属性值+1 // 遍历对象,得到最大值和该字符 var str = 'abcagsgtsactwgsded'; var obj = {}; for (var i = 0; i < str.length; i++) { if (obj[str.charAt(i)]) { obj[str.charAt(i)]++; } else { obj[str.charAt(i)] = 1; } } // 2、遍历对象 var max = 0; var key = ''; for (k in obj) { // k 属性 // obj[k] 属性值 if (obj[k] > max) { max = obj[k]; key = k; } }
注:如果使用java语言,可以用java的map集合代替JS的对象