您的位置:首页 > Web前端

前端试题-js判断字符串中出现次数最多的字符及统计次数

2016-02-24 15:39 721 查看
两种做法,一种把相同字符放在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));
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: