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

JavaScript में ऑब्जेक्ट्स के ऐरे को लेकर उपरोक्त JSON को ट्री-स्ट्रक्चर में बदलना


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

const arr = [   {     "parentIndex": '0' ,     "childIndex": '3' ,     "parent": "ROOT",     "child": "root3"   },   {     "parentIndex": '3' ,     "childIndex": '2' ,     "parent": "root3" ,     "child": "root2"   },   {     "parentIndex": '3' ,     "childIndex": '1' ,     "parent": "root3" ,     "child": "root1"   } ];

हमें एक JavaScript फ़ंक्शन लिखना है जो ऐसा ऑब्जेक्ट्स का ऐरे लेता है। फ़ंक्शन को फिर रिकर्सन का उपयोग करके उपरोक्त JSON को ट्री-स्ट्रक्चर में बदलना चाहिए।

ट्री-स्ट्रक्चर इस तरह दिखेगा -

nodeStructure: {   text: { name: "root3" },   children: [     {       text: { name: "root2" }     },     {       text: { name: "root1" }     }   ] } };

उदाहरण

इसका कोड होगा -

const arr = [   {     "parentIndex": '0' ,     "childIndex": '3' ,     "parent": "ROOT",     "child": "root3"   },   {     "parentIndex": '3' ,     "childIndex": '2' ,     "parent": "root3" ,     "child": "root2"   },   {     "parentIndex": '3' ,     "childIndex": '1' ,     "parent": "root3" ,     "child": "root1"   } ]; const partial = (arr = [], condition) => {   const result = [];   for (let i = 0; i < arr.length; i++) {     if(condition(arr[i])){       result.push(arr[i]);     }   }   return result; } const findNodes = (parentKey,items) => {   let subItems = partial(items, n => n.parent === parentKey);   const result = [];   for (let i = 0; i < subItems.length; i++) {     let subItem = subItems[i];     let resultItem = {       text: {name:subItem.child}     };     let kids = findNodes(subItem.child , items);     if(kids.length){       resultItem.children = kids;     }     result.push(resultItem);   }   return result; } console.log(JSON.stringify(findNodes('ROOT', arr), undefined, 4));

आउटपुट

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

[   {     "text": {       "name": "root3"     },     "children": [       {         "text": {           "name": "root2"         }       },       {         "text": {           "name": "root1"         }       }     ]   } ]

  1. - JavaScript में arguments ऑब्जेक्ट को ऐरे में कैसे कन्वर्ट करें?

    Array.from() मेथड JavaScript में arguments ऑब्जेक्ट को ऐरे में कन्वर्ट करने के लिए Array.from() मेथड का उपयोग करें। उदाहरण <!DOCTYPE html> <html> <body> <script> function sortArg() { var args = Array.from(arguments); return args.sort();

  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 में ऐरे ऑब्जेक्ट की लंबाई JavaScript में ऐरे ऑब्जेक्ट की लंबाई

    JavaScript में Length प्रॉपर्टी ऑब्जेक्ट का आकार लौटाती है। स्ट्रिंग और ऐरे ऑब्जेक्ट की लंबाई के लिए कोड निम्न है -उदाहरण<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, i