Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> JavaScript

Nếu phần tử lặp lại, xóa tất cả các instance của nó khỏi mảng trong JavaScript

Nếu phần tử lặp lại, xóa tất cả các instance của nó khỏi mảng trong JavaScript

Chúng ta cần viết một hàm nhận vào một mảng và trả về mảng mới đã xóa tất cả các giá trị trùng lặp. Các giá trị xuất hiện nhiều hơn một lần trong mảng gốc thậm chí không nên xuất hiện một lần trong mảng mới.

Ví dụ, nếu đầu vào là:

const arr = [763,55,43,22,32,43,763,43];

Kết quả đầu ra nên là:

const output = [55, 22, 32];

Array.prototype.indexOf(): Trả về chỉ số lần xuất hiện đầu tiên của chuỗi tìm kiếm nếu tồn tại, ngược lại -1.

Array.prototype.lastIndexOf(): Trả về chỉ số lần xuất hiện cuối cùng của chuỗi tìm kiếm nếu tồn tại, ngược lại -1.

Do đó, hãy viết mã cho hàm này:

Ví dụ

Mã thực hiện như sau:

const arr = [763,55,43,22,32,43,763,43];
const deleteDuplicate = (arr) => {
  const output = arr.filter((item, index, array) => {
    return array.indexOf(item) === array.lastIndexOf(item);
  });
  return output;
};
console.log(deleteDuplicate(arr));

Đầu ra

Kết quả trong console sẽ là:

[ 55, 22, 32 ]