Computer >> Máy Tính >  >> Lập trình >> Javascript

Xóa hoàn toàn các phần tử thừa khỏi mảng - JavaScript

Chúng ta được yêu cầu viết một hàm nhận vào một mảng và trả về một mảng mới đã xóa tất cả các giá trị trùng lặp khỏi nó. Các giá trị xuất hiện nhiều lần trong mảng ban đầu thậm chí không được 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];

Đầu ra phải là -

const output = [55, 22, 32];

Chúng tôi sẽ sử dụng hai phương pháp sau -

  • Array.prototype.indexOf () -

    Nó trả về chỉ số của lần xuất hiện đầu tiên của chuỗi được tìm kiếm nếu nó tồn tại, nếu không thì -1.

  • Array.prototype.lastIndexOf ()

    Nó trả về chỉ mục của lần xuất hiện cuối cùng của chuỗi được tìm kiếm nếu nó tồn tại, nếu không thì -1.

Ví dụ

Sau đây là mã -

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

Điều này sẽ tạo ra kết quả sau trong bảng điều khiển -

[ 55, 22, 32 ]