मान लीजिए, हमारे पास ऑब्जेक्ट की एक सरणी है जैसे -
const arr = [
{
url: 'www.example.com/hello',
id: "22"
},
{
url: 'www.example.com/hello',
id: "22"
},
{
url: 'www.example.com/hello-how-are-you',
id: "23"
},
{
url: 'www.example.com/i-like-cats',
id: "24"
},
{
url: 'www.example.com/i-like-pie',
id: "25"
}
];
हमें एक JavaScript फ़ंक्शन लिखना है जो ऐसी ऑब्जेक्ट की सरणी लेता है। फ़ंक्शन को सरणी से उन ऑब्जेक्ट को हटाना चाहिए जिनमें डुप्लिकेट id कुंजियाँ हैं। हमें इसे underscore जैसी किसी भी लाइब्रेरी का उपयोग किए बिना करना आवश्यक है।
आइए इस फ़ंक्शन के लिए कोड लिखते हैं -
उदाहरण
इसके लिए कोड होगा -
const arr = [
{
url: 'www.example.com/hello',
id: "22"
},
{
url: 'www.example.com/hello',
id: "22"
},
{
url: 'www.example.com/hello-how-are-you',
id: "23"
},
{
url: 'www.example.com/i-like-cats',
id: "24"
},
{
url: 'www.example.com/i-like-pie',
id: "25"
}
];
const removeDuplicate = (arr = []) => {
const map = {};
for(let i = 0; i < arr.length; ){
const { id } = arr[i];
if(map.hasOwnProperty(id)){
arr.splice(i, 1);
}else{
map[id] = true;
i++;
};
};
};
removeDuplicate(arr);
console.log(arr);
आउटपुट
कंसोल में आउटपुट होगा -
[
{ url: 'www.example.com/hello', id: '22' },
{ url: 'www.example.com/hello-how-are-you', id: '23' },
{ url: 'www.example.com/i-like-cats', id: '24' },
{ url: 'www.example.com/i-like-pie', id: '25' }
]