两种做法,一种把相同字符放在json对象数组里
//把相同字符放在json对象里
function test(str){
var obj = {};
var num = 0;
var value = '';
for (var i = 0; i < str.length; i++){
if (!obj[str[i]])
obj[str[i]] = [];
obj[str[i]].push(str[i]);
}
for (var attr in obj){
if (num < obj[attr].length){
num = obj[attr].length;
value = obj[attr][0];
}
}
return '最多的字符是:' + value + ', 出现了:' + num + '次.';
}
var str = 'jogaetagdagih8hdfgaga';
test(str);
另一种是用正则表达式来做
function test(str){
var arr = str.split('');
arr.sort();
str = arr.join('');
var re = /(w)1+/g;
var num = 0;
var value = 0;
str.replace(re, function($0, $1){
if (num < $0.length) {
num = $0.length;
value = $1;
}
});
return '最多的字符是:' + value + ', 出现了:' + num + '次.' ;
}
var str = 'jogaetagdagih8hdfgaga';
alert(test(str));