हमारे पास वस्तुओं की निम्नलिखित सरणियाँ हैं, हमें उन वस्तुओं को हटाने के लिए एक में विलय करने की आवश्यकता है जिनके पास संपत्ति के नाम के लिए अनावश्यक मूल्य है -
const first = [{ name: 'Rahul', age: 23 }, { name: 'Ramesh', age: 27 }, { name: 'Vikram', age: 35 }, { name: 'Harsh', age: 34 }, { name: 'Vijay', age: 21 }]; const second = [{ name: 'Vijay', age: 21 }, { name: 'Vikky', age: 20 }, { name: 'Joy', age: 26 }, { name: 'Vijay', age: 21 }, { name: 'Harsh', age: 34 }, ]
हम एक फ़ंक्शन कंबाइनएरे को परिभाषित करते हैं, दो सरणियों को तर्क के रूप में संयोजित करने के लिए लेते हैं और एक नया सरणी लौटाते हैं -
const combineArray = (first, second) => { const combinedArray = []; const map = {}; first.forEach(firstEl => { if(!map[firstEl.name]){ map[firstEl.name] = firstEl; combinedArray.push(firstEl); } }); second.forEach(secondEl => { if(!map[secondEl.name]){ map[secondEl.name] = secondEl; combinedArray.push(secondEl); } }) return combinedArray; } console.log(combineArray(first, second));
यह फ़ंक्शन न केवल दूसरी सरणी से डुप्लिकेट प्रविष्टियों को हटाना सुनिश्चित करता है, इसके अलावा पहले सरणी में कोई डुप्लिकेट प्रविष्टि मौजूद होती, तो वह उसे भी हटा देती।
ये रहा पूरा कोड -
उदाहरण
const first = [{ name: 'Rahul', age: 23 }, { name: 'Ramesh', age: 27 }, { name: 'Vikram', age: 35 }, { name: 'Harsh', age: 34 }, { name: 'Vijay', age: 21 }]; const second = [{ name: 'Vijay', age: 21 }, { name: 'Vikky', age: 20 }, { name: 'Joy', age: 26 }, { name: 'Vijay', age: 21 }, { name: 'Harsh', age: 34 }, ] const combineArray = (first, second) => { const combinedArray = []; const map = {}; first.forEach(firstEl => { if(!map[firstEl.name]){ map[firstEl.name] = firstEl; combinedArray.push(firstEl); } }); second.forEach(secondEl => { if(!map[secondEl.name]){ map[secondEl.name] = secondEl; combinedArray.push(secondEl); } }) return combinedArray; } console.log(combineArray(first, second));
आउटपुट
कंसोल आउटपुट होगा -
[ { name: 'Rahul', age: 23 },{ name: 'Ramesh', age: 27 },{ name: 'Vikram', age: 35 }, { name: 'Harsh', age: 34 },{ name: 'Vijay', age: 21 },{ name: 'Vikky', age: 20 }, { name: 'Joy', age: 26 } ]