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

ऑब्जेक्ट मर्ज करें और जावास्क्रिप्ट में एक ही संपत्ति का योग करें

<घंटा/>

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

const first = [
   {
      id: "57e7a1cd6a3f3669dc03db58",
      quantity:3
   },
   {
      id: "57e77b06e0566d496b51fed5",
      quantity:3
   },
   {
      id: "57e7a1cd6a3f3669dc03db58",
      quantity:3
   },
   {
      id: "57e77b06e0566d496b51fed5",
      quantity:3
   }
];
const second = [
   {
      id: "57e7a1cd6a3f3669dc03db58",
      quantity:6
   },
   {
      id: "57e77b06e0566d496b51fed5",
      quantity:6
   }
];

अब हमें एक ऐसा फ़ंक्शन लिखने की आवश्यकता है जो दो सरणियों को मर्ज करता है, जैसे कि समान आईडी वाले ऑब्जेक्ट दोहरावदार नहीं दिखते हैं और इसके अलावा, ऑब्जेक्ट डुप्लिकेट आईडी के लिए मात्रा संपत्ति एक साथ जुड़ जाती है।

इसलिए, आइए इस फ़ंक्शन के लिए कोड लिखें -

उदाहरण

const first = [
   {
      id: "57e7a1cd6a3f3669dc03db58",
      quantity:3
   },
   {
      id: "57e77b06e0566d496b51fed5",
      quantity:3
   },
   {
      id: "57e7a1cd6a3f3669dc03db58",
      quantity:3
   },
   {
      id: "57e77b06e0566d496b51fed5",
      quantity:3
   }
];
const second = [
   {
      id: "57e7a1cd6a3f3669dc03db58",
      quantity:6
   },
   {
      id: "57e77b06e0566d496b51fed5",
      quantity:6
   }
];
const mergeArray = (first, second) => {
   return [...first, ...second].reduce((acc, val, i, arr) => {
      const { id, quantity } = val;
      const ind = acc.findIndex(el => el.id === id);
      if(ind !== -1){
         acc[ind].quantity += quantity;
      }else{
         acc.push({
            id,
            quantity
         });
      }
      return acc;
   }, []);
}
console.log(mergeArray(first, second));

आउटपुट

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

[
   { id: '57e7a1cd6a3f3669dc03db58', quantity: 12 },
   { id: '57e77b06e0566d496b51fed5', quantity: 12 }
]

  1. जावास्क्रिप्ट का उपयोग करके ऐरे में नेस्टेड ऑब्जेक्ट मानों का योग

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

  1. जावास्क्रिप्ट में ऑब्जेक्ट प्रॉपर्टी नाम की सरणी को बदलना

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

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

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