刪除重複項並對映 JavaScript 中的陣列


假設我們有這樣的一個物件陣列 −

const arr = [
   {id:123, value:"value1", name:"Name1"},
   {id:124, value:"value2", name:"Name1"},
   {id:125, value:"value3", name:"Name2"},
   {id:126, value:"value4", name:"Name2"}
];

請注意,陣列中物件的某些“name”屬性是重複的。

我們需要編寫一個 JavaScript 函式,該函式需要放入一個這樣的物件陣列。然後,該函式應該構建一個新的字串陣列,該陣列僅包含陣列中的唯一“name”屬性值。

因此,上述輸入的輸出應如下所示 −

const output = ["Name1", "Name2"];

示例

為此,程式碼如下 −

const arr = [
   {id:123, value:"value1", name:"Name1"},
   {id:124, value:"value2", name:"Name1"},
   {id:125, value:"value3", name:"Name2"},
   {id:126, value:"value4", name:"Name2"}
];
const pickNames = (arr = []) =>{
   const res = [];
   for (let i = arr.length; i−−;){
      if (res.indexOf(arr[i].name) < 0) {
         res.push(arr[i].name);
      };
   }
   return res;
};
console.log(pickNames(arr));

輸出

控制檯中的輸出如下 −

[ 'Name2', 'Name1' ]

更新於: 20-Nov-2020

523 次觀看

啟動你的 職業

透過完成課程獲得認證

開始學習
廣告
© . All rights reserved.