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

JavaScript में समान की वैल्यू वाले ऑब्जेक्ट्स को मर्ज करना और उनकी गिनती करना


मान लीजिए, हमारे पास ऑब्जेक्ट्स का एक ऐरे है जैसे कि -

const arr = [{   "value": 10,   "id": "111",   "name": "BlackCat", }, {   "value": 10,   "id": "111",   "name": "BlackCat", }, {   "value": 15,   "id": "777",   "name": "WhiteCat", }];

हमें एक JavaScript फ़ंक्शन लिखना है जो ऐसा ऐरे लेता है।

फ़ंक्शन को फिर उन सभी ऑब्जेक्ट्स को एक साथ मर्ज करना चाहिए जिनमें "id" प्रॉपर्टी के लिए सामान्य मान है।

इसलिए, उपरोक्त ऐरे के लिए, आउटपुट इस तरह दिखना चाहिए -

const output = [{   "value": 10,   "id": "111",   "name": "BlackCat",   "count": 2, }, {   "value": 15,   "id": "777",   "name": "WhiteCat",   "count": 1, }]

उदाहरण

const arr = [{   "value": 10,   "id": "111",   "name": "BlackCat", }, {   "value": 10,   "id": "111",   "name": "BlackCat", }, {   "value": 15,   "id": "777",   "name": "WhiteCat", }]; const combinedItems = (arr = []) => {   const res = arr.reduce((acc, obj) => {     let found = false;     for (let i = 0; i < acc.length; i++) {       if (acc[i].id === obj.id) {         found = true;         acc[i].count++;       };     }     if (!found) {       obj.count = 1;       acc.push(obj);     }     return acc;   }, []);   return res; } console.log(combinedItems(arr));

आउटपुट

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

[   { value: 10, id: '111', name: 'BlackCat', count: 2 },   { value: 15, id: '777', name: 'WhiteCat', count: 1 } ]

  1. - JavaScript में इमेज के usemap एट्रिब्यूट का मान कैसे प्राप्त करें?

    अवलोकनuseMap प्रॉपर्टी इमेज के usemap एट्रिब्यूट का मान लौटाती है।उदाहरण<!DOCTYPE html> <html>    <body>       <img id = "myid" src = "/images/html.gif" alt = "HTML Map" usemap = "#html"/>       &

  1. - स्ट्रिंग की के साथ नेस्टेड JavaScript ऑब्जेक्ट्स एक्सेस करना

    किसी भी लेवल पर प्रॉपर्टीज़ को सुरक्षित रूप से प्राप्त करने के लिए आप lodash के get मेथड का उपयोग कर सकते हैं। फर्स्ट-लेवल प्रॉपर्टीज़ प्राप्त करना काफी सीधा है। नेस्टेड प्रॉपर्टी एक्सेस ट्रिकी है और इसके लिए आपको lodash जैसी टेस्टेड लाइब्रेरी का उपयोग करना चाहिए। आप डीपली नेस्टेड ऑब्जेक्ट को निम्न

  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>