统计字符串中每种字符出现的次数,出现次数最多的哪个字,共出现几次。
思路:
首先声明一个空数组
遍历字符串,
如果arr中没有这个名称的字母,就向arr中添加当前字母,值为1
否则如果arr中已经有了这个名称的字母,就给arr中这个字母值+1
代码:
<!DOCTYPE html>
<html lang="zh">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<script>
// 统计字符串中每种字符出现的次数 出现次数最多的哪个字 共出现几次
var str = 'helloworld';
var arr = [];
for(var i = 0;i<str.length;i++){
// 获取当前字母
var char = str[i];
// 如果arr中没有这个名称的字母,就向arr中添加当前字母,值为1
if(arr[char] === undefined){
arr[char] = 1;
}
// 否则如果arr中已经有了这个名称的字母,就给arr中这个字母值+1
arr[char]++;
}
console.log(arr);
var maxChar,count=0;
// maxChar:暂存目前最多的字符
// count:暂存目前最多的数量
// 遍历:
for(var key in arr){
// 如果当前字母的数量大于count
if(arr[key]>count){
// 就用key代替maxChar
maxChar = key;
// 就用key的value代替count
count = arr[key];
}
}
console.log(`出现次数最多的字母是${maxChar},出现了${count}次`);
</script>
</body>
</html>
打印结果: