完全從陣列中刪除冗餘元素 - 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 ]

更新於:18-9-2020

245 次瀏覽

Kickstart Your Career

透過完成課程獲得認證

開始
廣告