Viết hàm nhận mảng số có nhiều phần tử trùng. Trả về mảng các phần tử xuất hiện > 1 lần (mỗi phần tử chỉ liệt kê một lần).
Ví dụ: [1,3,4,3,5,4,6,8,8] → [3,4,8].
Ví dụ
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]]++;
} else {
map[arr[i]] = 1;
}
}
return res;
};
console.log(findDuplicates(arr)); // [3,4,8]
Kết quả
[3, 4, 8]