JavaScript 数组:查找出现次数超过 n 次的所有元素
javascriptweb developmentobject oriented programming更新于 2025/10/24 19:56:17
我们有一个包含一些重复条目的 Number/String 文字数组。我们的工作是编写一个函数,该函数接受一个正整数 n,并返回所有元素的子数组,这些元素的出现次数大于或等于唯一参数指定的数字 n。
因此,让我们为该函数 − 编写代码
我们将使用 Map() 来保持元素频率的计数,然后返回超过指定计数的元素。此代码将是 −
示例
const arr = [34, 6, 34, 8, 54, 7, 87, 23, 34, 6, 21, 6, 23, 4, 23];
const moreThan = (arr, num) => {
const creds = arr.reduce((acc, val) => {
let { map, res } = acc;
const count = map.get(val);
if(!count && typeof count !== 'number'){
map.set(val, 1);
}else if(num - count <= 1){
res.push(val);
} else {
map.set(val, count+1);
};
return {map, res};
}, {
map: new Map(),
res: []
});
return creds.res;
};
console.log(moreThan(arr, 3));
输出
控制台中的输出将是 −
[34, 6, 23]
相关文章
有用资源
javascript 参考教程 - 该教程包含有关 javascript 的更多信息:https://www.cainiaomax.com/javascript/

