在JavaScript中查找具有多个重复项的数组中的所有重复数
我们需要编写一个JavaScript函数,该函数接受一个Numbers数组,其中包含许多重复项。
函数应准备一个数组,其中包含在数组中出现多次的所有元素,然后返回该数组。
例如-
如果输入数组是-
const arr = [1, 3, 4, 3, 5, 4, 6, 8, 8];
那么输出数组应该是-
const output = [3, 4, 8];
示例
以下是代码-
const arr = [1, 3, 4, 3, 5, 4, 6, 8, 8];
const findDuplicates = (arr = []) => {
let map = {};
let res = [];
for(let i = 0; i < arr.length; i++) {
if(map[arr[i]]) {
if(map[arr[i]] === 1) {
res.push(arr[i]);
}
map[arr[i]] = map[arr[i]] + 1;
} else {
map[arr[i]] = 1;
};
};
return res;
};
console.log(findDuplicates(arr));输出结果
以下是控制台上的输出-
[3, 4, 8]