先将该字符串用空格分隔为一个数组, 遍历该数组,将其出现的次数以及单词元素用map存储起来,然后循环map,找出出现次数最多的项
function findMaxFrequency (str) {
if (!str) return 0;
let arr = str.split(' '), len = arr.length, objMap = new Map();
for(let i = 0; i < len; i++) {
if (arr[i]) {
if (objMap.has(arr[i])) {
objMap.set(arr[i], objMap.get(arr[i])+1)
} else {
objMap.set(arr[i], 1)
}
}
}
let item = {key: '', value: 0}
objMap.forEach((value, key) => {
value > item.value && (item.value = value, item.key = key)
})
return item.key
}
console.log(findMaxFrequency('aa bb rr yy vv ff aa '))