Cho mảng có các giá trị trùng lặp nhiều lần:
const arr = [1, 4, 3, 3, 1, 3, 2, 4, 2, 1, 4, 4];
Viết hàm lấy ra tất cả các giá trị trùng lặp nhưng chỉ một lần cho mỗi giá trị.
Kết quả mong đợi: [1, 4, 3, 2]
Ví dụ
Mã thực hiện:
const arr = [1, 4, 3, 3, 1, 3, 2, 4, 2, 1, 4, 4];
const pickDuplicate = arr => {
const res = [];
for(let i = 0; i < arr.length; i++){
if(arr.indexOf(arr[i]) !== arr.lastIndexOf(arr[i])){
if(!res.includes(arr[i])){
res.push(arr[i]);
};
};
};
return res;
};
console.log(pickDuplicate(arr));
Kết quả
Kết quả in ra console:
[1, 4, 3, 2]