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

Xóa phần tử trùng lặp nhưng giữ nguyên độ dài mảng - JavaScript


Chúng ta phải viết một hàm nhận vào một mảng, xóa tất cả các giá trị trùng lặp và chèn cùng số lượng chuỗi rỗng vào cuối mảng.

Ví dụ:

Nếu tìm thấy bốn giá trị trùng lặp, ta xóa tất cả và chèn bốn chuỗi rỗng vào cuối.

Ví dụ

Dưới đây là đoạn code:

const arr = [1,2,3,1,2,3,2,2,3,4,5,5,12,1,23,4,1]; 
const deleteAndInsert = arr => { 
  const creds = arr.reduce((acc, val, ind, array) => { 
    let { count, res } = acc; 
    if(array.lastIndexOf(val) === ind){ 
      res.push(val); 
    }else{ 
      count++; 
    }; 
    return {res, count}; 
  }, { 
    count: 0, 
    res: [] 
  }); 
  const { res, count } = creds; 
  return res.concat(" ".repeat(count).split(" ")); 
}; 
console.log(deleteAndInsert(arr));

Kết quả

Đoạn code sẽ in ra console:

[ 
  2, 
  3, 
  5, 
  12, 23, 4, 
  1, 
  '', '', '', '', '', '', '', 
  '', '', '' 
]