本文介紹了在Javascript中從數組中刪除重復元素的處理方法,對大家解決問題具有一定的參考價值,需要的朋友們下面隨著小編來一起學習吧!
問題描述
我有一個包含對象電子郵件和 ID 的數組,所以我想刪除具有相似 ID 的重復元素.
I have array with obejcts email and Id so I want delete duplicate elements who have similar ID's.
例子:
var newarray=[
{
Email:"test1@gmail.com",
ID:"A"
},
{
Email:"test2@gmail.com",
ID:"B"
},
{
Email:"test3@gmail.com",
ID:"A"
},
{
Email:"test4@gmail.com",
ID:"C"
},
{
Email:"test4@gmail.com",
ID:"C"
}
];
現在我需要刪除具有 ID 的重復元素很常見.因此我期望最終的數組是
Now I need to delete Duplicate elements which have ID's are common.In the sence I am expecting final Array is
var FinalArray=[
{
Email:"test1@gmail.com",
ID:"A"
},
{
Email:"test2@gmail.com",
ID:"B"
},
{
Email:"test5@gmail.com",
ID:"C"
}
];
推薦答案
使用 Array.prototype.filter 過濾掉元素并檢查重復項,使用 temp
數組
Use Array.prototype.filter to filter out the elements and to keep a check of duplicates use a temp
array
var newarray = [{
Email: "test1@gmail.com",
ID: "A"
}, {
Email: "test2@gmail.com",
ID: "B"
}, {
Email: "test3@gmail.com",
ID: "A"
}, {
Email: "test4@gmail.com",
ID: "C"
}, {
Email: "test5@gmail.com",
ID: "C"
}];
// Array to keep track of duplicates
var dups = [];
var arr = newarray.filter(function(el) {
// If it is not a duplicate, return true
if (dups.indexOf(el.ID) == -1) {
dups.push(el.ID);
return true;
}
return false;
});
console.log(arr);
這篇關于在Javascript中從數組中刪除重復元素的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,也希望大家多多支持html5模板網!
【網站聲明】本站部分內容來源于互聯網,旨在幫助大家更快的解決問題,如果有圖片或者內容侵犯了您的權益,請聯系我們刪除處理,感謝您的支持!