Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> JavaScript

JavaScript में ऑब्जेक्ट वाली दो सरणियों को एक में कैसे मर्ज करें?


मान लीजिए, हमारे पास ऑब्जेक्ट की दो सरणियां हैं जैसे -

const arr1 = [
    {name:'test', lastname: 'test', gender:'f'},
    {name:'test1', lastname: 'test1', gender:'f'},
    {name:'test2', lastname: 'test2', gender:'m'}
];
const arr2 = [
    {name:'test21', lastname: 'test21', gender:'f'},
    {name:'test1', lastname: 'test1', gender:'f'},
    {name:'test2', lastname: 'test2', gender:'m'},
    {name:'test22', lastname: 'test22', gender:'m'}
];

इन सरणियों में भीतर कोई दोहराव वाले ऑब्जेक्ट नहीं हैं ('name' प्रॉपर्टी के आधार पर) लेकिन पहली और दूसरी सरणी में कुछ ऑब्जेक्ट हैं जिनके नाम दोहराए जा रहे हैं।

हमें एक JavaScript फ़ंक्शन लिखना है जो ऐसी दो सरणियां लेता है और एक नई सरणी लौटाता है।

नई सरणी में पहली और दूसरी सरणी के सभी अद्वितीय ऑब्जेक्ट होने चाहिए। यहां, किसी भी ऑब्जेक्ट की विशिष्टता की जांच करने के लिए हम उसके अद्वितीय "name" प्रॉपर्टी की जांच करेंगे।

उदाहरण

इसके लिए कोड होगा -

const arr1 = [
    {name:'test', lastname: 'test', gender:'f'},
    {name:'test1', lastname: 'test1', gender:'f'},
    {name:'test2', lastname: 'test2', gender:'m'}
];
const arr2 = [
    {name:'test21', lastname: 'test21', gender:'f'},
    {name:'test1', lastname: 'test1', gender:'f'},
    {name:'test2', lastname: 'test2', gender:'m'},
    {name:'test22', lastname: 'test22', gender:'m'}
];
const mergeUniquely = (arr1 = [], arr2 = []) => {
    const newArr = arr1.concat(arr2);
    const map = {};
    const res = [];
    newArr.forEach(el => {
        if(!map[el['name']]){
            res.push(el);
            map[el['name']] = 1;
        };
    });
    return res;
};
console.log(mergeUniquely(arr1, arr2));

आउटपुट

कंसोल में आउटपुट होगा -

[
    { name: 'test', lastname: 'test', gender: 'f' },
    { name: 'test1', lastname: 'test1', gender: 'f' },
    { name: 'test2', lastname: 'test2', gender: 'm' },
    { name: 'test21', lastname: 'test21', gender: 'f' },
    { name: 'test22', lastname: 'test22', gender: 'm' }
]
  1. दो जावास्क्रिप्ट ऑब्जेक्ट्स को कैसे मर्ज करें? दो जावास्क्रिप्ट ऑब्जेक्ट्स को कैसे मर्ज करें?

    दो जावास्क्रिप्ट ऑब्जेक्ट्स को एक साथ मर्ज करने का कोड निम्नलिखित है - उदाहरण <!DOCTYPE html> <html lang=en> <head> <meta charset=UTF-8 /> <meta name=viewport content=width=device-width, initial-scale=1.0 /> <title>Document</title> <style>   &nb

  1. जावास्क्रिप्ट में दो ऐरे को कैसे गुणा करें? जावास्क्रिप्ट में दो ऐरे को कैसे गुणा करें?

    जावास्क्रिप्ट में दो ऐरे को गुणा करने के लिए निम्नलिखित कोड है: उदाहरण <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Documen

  1. जावास्क्रिप्ट में ऑब्जेक्ट्स को सिंगल ऑब्जेक्ट ऐरे में मर्ज कैसे करें? जावास्क्रिप्ट में ऑब्जेक्ट्स को सिंगल ऑब्जेक्ट ऐरे में मर्ज कैसे करें?

    ऑब्जेक्ट्स को सिंगल ऑब्जेक्ट ऐरे में मर्ज करने के लिए निम्नलिखित कोड है: उदाहरण <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title&g