JavaScript 实现找出某字符串中出现次数最多的字符,并统计其出现次数
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>JS实现找到某字符串中出现次数最多的字符,并统计次数</title>
</head>
<body>
<script type="text/javascript">
var str = "Hello World! I am SunnyWangwei.....lalalala";
//定义JSON格式的变量,备后用
var json = {};
//以下代码遍历str,将其中的字符和该字符出现的次数存放在json中
for(var i=0; i<str.length; i++) {
//判断json中是否存在当前str.charAr(i)的值
//charAt()返回指定位置的字符
if(!json[str.charAt(i)]) {
//如果不存在,则将其存放在json中,并且赋值为1,相当于出现的次数为1
json[str.charAt(i)] = 1;
}else {
//如果存在,则这个字符的值加1,相当于次数加1
json[str.charAt(i)]++;
}
}
//定义变量char存储出现次数最多的字符,number为该字符出现的次数
var charStr = '';
var num = 0;
// 遍历json,找到值最大的字符,值相当于次数
for(var key in json) {
//判断当前json中的键值(相当于当前键所在字符的次数)是否大于num
if(json[key] > num) {
//如果大于num,就将键(字符)存放在charStr中,键值存放在num中
charStr = key;
num = json[key];
}
}
//打印结果
// console.log(charStr);
// console.log(num);
document.write("字符串str中出现次数最多的字符为: "+ charStr + "<br>");
document.write("出现次数为: "+ num + "<br>");
</script>
</body>
</html>