如果元素重複,從 JavaScript 陣列中刪除此元素的所有例項


我們需要編寫一個函式,該函式取出一個數組並返回一個新陣列,此新陣列刪除了所有重複值。在原始陣列中出現過多次的值在這新陣列中連一次都不能出現。

例如,如果輸入為 −

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

輸出應為 −

const output = [55, 22, 32];

Array.prototype.indexOf():如果存在,則返回要搜尋的字串的第一個出現處的索引,否則返回 -1。

Array.prototype.lastIndexOf():如果存在,則返回要搜尋的字串最後一次出現處的索引,否則返回 -1。

因此,讓我們編寫此函式的程式碼 −

示例

這段程式碼為 −

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));

輸出

控制檯中的輸出為 −

[ 55, 22, 32 ]

更新於:20-Oct-2020

69 瀏覽

開啟你的 職業生涯

完成本課程以獲得認證

開始
廣告
© . All rights reserved.