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

JavaScript में JSON सरणी को सामान्य JSON में बदलें


मान लीजिए, हमारे पास की/वैल्यू जोड़ी ऑब्जेक्ट्स के साथ एक JSON सरणी है जैसे −

const arr = [{     "key": "name",     "value": "john" }, {     "key": "number",     "value": "1234" }, {     "key": "price",     "value": [{       "item": [{         "item": [{           "key": "quantity",           "value": "20"         },         {           "key": "price",           "value": "200"         }]       }]     }] }];

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

फ़ंक्शन को एक नई सरणी तैयार करनी चाहिए जहां डेटा इस जटिल संरचना के बजाय केवल की-वैल्यू के विरुद्ध सूचीबद्ध हो।

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

const output = {     "name": "john",     "number": "1234",     "price": {       "quantity": "20",       "price": "200"     } };

उदाहरण

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

const arr = [{     "key": "name",     "value": "john" }, {     "key": "number",     "value": "1234" }, {     "key": "price",     "value": [{       "item": [{         "item": [{           "key": "quantity",           "value": "20"         },         {           "key": "price",           "value": "200"         }]       }]     }] }]; const simplify = (arr = []) => {     const res = {};     const recursiveEmbed = function(el){       if ('item' in el) {         el.item.forEach(recursiveEmbed, this);         return;       };       if (Array.isArray(el.value)) {         this[el.key] = {};         el.value.forEach(recursiveEmbed, this[el.key]);         return;       };       this[el.key] = el.value;     };     arr.forEach(recursiveEmbed, res);     return res; }; console.log(simplify(arr));

आउटपुट

और कंसोल में आउटपुट होगा −

{     name: 'john',     number: '1234',     price: { quantity: '20', price: '200' } }

  1. JavaScript में MySQL DATETIME वैल्यू को JSON फॉर्मेट में कैसे बदलें? JavaScript में MySQL DATETIME वैल्यू को JSON फॉर्मेट में कैसे बदलें?

    बदलने के लिए, JSON.stringify() का उपयोग करें। JavaScript में MySQL DATETIME वैल्यू को JSON फॉर्मेट में बदलने का कोड निम्न है: <script> var mySQLDateTime = new Date(Fri Sep 06 2019 22:54:48); var yearValue = mySQLDateTime.getFullYear(); var dateValue = mySQLDateTime.getDate(); var monthValue=m

  1. JavaScript में Array को JSON में बदलें JavaScript में Array को JSON में बदलें

    JSON.stringify() मेथड JavaScript एरे या ऑब्जेक्ट को JSON स्ट्रिंग में बदलता है, जो डेटा स्टोरेज, API कम्युनिकेशन, और डिबगिंग के लिए आवश्यक है। उदाहरण { const jsonString = JSON.stringify(arr); sampleEle.innerHTML += JSON स्ट्रिंग: + jsonString; }); </script> </body

  1. - JavaScript में ऑब्जेक्ट्स की सरणी को साधारण ऑब्जेक्ट में बदलना

    मान लीजिए हमारे पास ऑब्जेक्ट्स की एक सरणी है जैसे - const arr = [{ name: Dinesh Lamba, age: 23, occupation: Web Developer, }, { address: Vasant Vihar, experience: 5, isEmployed: true }]; हमें एक JavaScript फ़ंक्शन लिखना है जो ऐसी ऑब्जेक्ट्स की सरणी लेता है। फ़ंक्शन को फिर एक ऑब्जेक्ट तै