Lọc giá trị trùng lặp chỉ xuất hiện một lần trong JavaScript
Chúng ta có một mảng các giá trị nguyên thủy chứa các giá trị trùng lặp xuất hiện nhiều lần như sau:
const arr = [1, 4, 3, 3, 1, 3, 2, 4, 2, 1, 4, 4];
Chúng ta cần viết một hàm JavaScript nhận vào mảng này và lấy ra tất cả các mục trùng lặp từ mảng gốc nhưng chỉ một lần.
Do đó, với mảng trên, kết quả đầu ra nên là:
const output = [1, 4, 3, 2];
Ví dụ
Mã thực hiện như sau:
const arr = [1, 4, 3, 3, 1, 3, 2, 4, 2, 1, 4, 4];
const removeDuplicate = 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(removeDuplicate(arr));
Đầu ra
Kết quả trong console:
[1, 4, 3, 2]