JS得到字符串中重复次数最多的项两种方法
时间: 2024-03-06 19:50:30 浏览: 15
方法一:
可以使用对象来存储每个字符出现的次数,然后找到出现次数最多的字符。
例如:
```javascript
function getMaxChar(str) {
let obj = {};
let maxChar = '';
let maxCount = 0;
for (let i = 0; i < str.length; i++) {
let char = str.charAt(i);
if (obj[char]) {
obj[char]++;
} else {
obj[char] = 1;
}
}
for (let key in obj) {
if (obj[key] > maxCount) {
maxChar = key;
maxCount = obj[key];
}
}
return maxChar;
}
let str = 'hello world';
let maxChar = getMaxChar(str);
console.log(`The most frequent char in "${str}" is "${maxChar}"`);
```
方法二:
可以使用数组来存储每个字符出现的次数,然后找到出现次数最多的字符。
例如:
```javascript
function getMaxChar(str) {
let arr = new Array(256).fill(0);
let maxChar = '';
let maxCount = 0;
for (let i = 0; i < str.length; i++) {
let char = str.charCodeAt(i);
arr[char]++;
}
for (let i = 0; i < arr.length; i++) {
if (arr[i] > maxCount) {
maxChar = String.fromCharCode(i);
maxCount = arr[i];
}
}
return maxChar;
}
let str = 'hello world';
let maxChar = getMaxChar(str);
console.log(`The most frequent char in "${str}" is "${maxChar}"`);
```