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

जावास्क्रिप्ट में JSON से ट्री सरणी बनाएँ

<घंटा/>

मान लीजिए, हमारे पास जावास्क्रिप्ट में निम्नलिखित सरणी है -

const arr =[{"code":"2", "name":"PENDING"},{ "code":"2.2", "name":"Pending CHILDREN"},{ "code":" 2.2.01.01", "नाम":"लंबित बच्चे बच्चे"}, { "कोड":"2.2.01.02", "नाम":"लंबित बच्चे बच्चे 02"}, { "कोड":"1", "नाम" :"सक्रिय"}, { "कोड":"1.1", "नाम":"सक्रिय बच्चे"}, { "कोड":"1.1.01", "नाम":"सक्रिय बच्चे बच्चे"}]; 

हमें एक जावास्क्रिप्ट फ़ंक्शन लिखने की आवश्यकता है जो ऐसी एक सरणी लेता है। फ़ंक्शन को ऑब्जेक्ट के "नाम" गुण के आधार पर इस सरणी से एक ट्री संरचना का निर्माण करना चाहिए।

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

const आउटपुट =[{"कोड":"2", "नाम":"लंबित", "बच्चे":[{"कोड":"2.2", "नाम":"लंबित बच्चे", "बच्चे" :[{"कोड":"2.2.01.01", "नाम":"लंबित बच्चे बच्चे"}, {"कोड":"2.2.01.02", "नाम":"लंबित बच्चे 02" }]}]}, { "कोड":"1", "नाम":"सक्रिय", "बच्चे":[{"कोड":"1.1", "नाम":"सक्रिय बच्चे", "बच्चे":[{"कोड":"1.1.01", "नाम":"सक्रिय बच्चे बच्चे" }] }]}];

उदाहरण

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

const arr =[{"code":"2", "name":"PENDING"},{ "code":"2.2", "name":"Pending CHILDREN"},{ "code":" 2.2.01.01", "नाम":"लंबित बच्चे बच्चे"}, { "कोड":"2.2.01.02", "नाम":"लंबित बच्चे बच्चे 02"}, { "कोड":"1", "नाम" :"सक्रिय"}, { "कोड":"1.1", "नाम":"सक्रिय बच्चे"}, { "कोड":"1.1.01", "नाम":"सक्रिय बच्चे बच्चे"}]; =(गिरफ्तारी, रूट ='') => {मानचित्र ={}, अंतिम =[रूट], स्तर =0; नक्शा [रूट] ={}; arr.forEach(el => { माता-पिता =रूट दें; जबकि (स्तर &&अंतिम [स्तर]। लंबाई> =el.code.length) {स्तर--; }; माता-पिता =अंतिम [स्तर]; स्तर ++; last.length =स्तर; last.push (el.code); नक्शा [el.code] =el; नक्शा [माता-पिता]। बच्चे =नक्शा [माता-पिता]। बच्चे || []; नक्शा [माता-पिता]। बच्चे। पुश (एल); }); वापसी नक्शा[रूट].बच्चों;};कंसोल.लॉग(JSON.stringify(transformToTree(arr), undefined, 4));

आउटपुट

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

[ { "कोड":"2", "नाम":"लंबित", "बच्चे":[ { "कोड":"2.2", "नाम":"लंबित बच्चे", "बच्चे":[ { "कोड":"2.2.01.01", "नाम":"लंबित बच्चे बच्चे" }, { "कोड":"2.2.01.02", "नाम":"लंबित बच्चे 02" } ] } ] }, { "कोड ":"1", "नाम":"सक्रिय", "बच्चे":[{"कोड":"1.1", "नाम":"सक्रिय बच्चे", "बच्चे":[ { "कोड":"1.1.1)। 01", "नाम":"सक्रिय बच्चे बच्चे" } ] } ] }]

  1. जावास्क्रिप्ट Array.from () विधि

    Array.from() किसी दिए गए सरणी उदाहरण से एक नया सरणी ऑब्जेक्ट बनाता है। सरणी से () फ़ंक्शन के लिए कोड निम्नलिखित है - उदाहरण <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-widt

  1. कैसे जावास्क्रिप्ट का उपयोग कर JSON सरणी से डेटा पढ़ने के लिए?

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

  1. किसी सरणी के अंतिम तत्व को प्रिंट करने के लिए जावास्क्रिप्ट कोड

    निम्नलिखित एक सरणी के अंतिम तत्व को प्रिंट करने के लिए कोड है - उदाहरण दस्तावेज़ बॉडी { फॉन्ट-फ़ैमिली:सेगो यूआई, ताहोमा, जिनेवा, वर्दाना, सेन्स-सेरिफ़; } .result,.sample {फ़ॉन्ट-आकार:18पीएक्स; फ़ॉन्ट-वजन:500; रंग:रेबेकापर्पल; } .परिणाम {रंग:लाल; }जावास्क्रिप्ट कोड किसी सरणी के अंतिम तत्व को प्रिंट क