2017-12-28 15 views
-4

私はこのようなJSONデータを持っています。そして、最も内側の子のデータを取得する必要があります。hierarchyLevel:4です。このJSONデータは静的ではなく、階層レベルは5,6,7などの任意のものになります。 javascriptで解決策を見つけるのを助けてください。JSONデータの最も内側の子を取得する方法

{ 
    "hierarchylist": [ 
    { 
     "hierarchyId": 10, 
     "hierarchyLevel": 0, 
     "name": "ABC", 
     "parentId": 0, 
     "children": [ 
     { 
      "hierarchyId": 12, 
      "hierarchyLevel": 1, 
      "name": "ABC-Child1", 
      "parentId": 10, 
      "children": [ 
      { 
       "hierarchyId": 2, 
       "hierarchyLevel": 2, 
       "name": "People Management & Development1 ", 
       "parentId": 12, 
       "children": [ 
       { 
        "hierarchyId": 5, 
        "hierarchyLevel": 3, 
        "name": "Resourcing2_1", 
        "parentId": 2, 
        "children": [ 
        { 
         "hierarchyId": 19, 
         "hierarchyLevel": 4, 
         "name": "Resource Request ", 
         "parentId": 5, 
         "children": [], 
         "docId": 19, 
         "docstatusid": 20 
        } 
        ] 
       } 
       ] 
      } 
      ] 
     } 
     ] 
    } 
    ] 
} 

ありがとうございます。

+5

遠い? – JanS

+0

checkout this https://stackoverflow.com/questions/31776583/get-child-inside-a-child-in-json-iterate-through-nested-json-with-jquery-js –

+0

あなたは 'hierarchyylistで取得できます。 children.children.children.children' –

答えて

0

あなたはwhileループを試すことができ、ここでの例だ

var children = json['hierarchylist']['children'][0]; 

while(typeof children !== 'undefined') { 
    children = children['children'][0]; 
} 

console.log(children); 
+0

ありがとうRohit、それは私を助けた。 – Santosh

+0

@サントスもしそれが助けられたら、それを答えとして受け入れてください。それは他の人を助けることができます。 –

1

これはあなたの最も内側の1を取得する必要があります:

あなたがそうしようとしている何

let data = { 
 
    "hierarchylist": [ 
 
    { 
 
     "hierarchyId": 10, 
 
     "hierarchyLevel": 0, 
 
     "name": "ABC", 
 
     "parentId": 0, 
 
     "children": [ 
 
     { 
 
      "hierarchyId": 12, 
 
      "hierarchyLevel": 1, 
 
      "name": "ABC-Child1", 
 
      "parentId": 10, 
 
      "children": [ 
 
      { 
 
       "hierarchyId": 2, 
 
       "hierarchyLevel": 2, 
 
       "name": "People Management & Development1 ", 
 
       "parentId": 12, 
 
       "children": [ 
 
       { 
 
        "hierarchyId": 5, 
 
        "hierarchyLevel": 3, 
 
        "name": "Resourcing2_1", 
 
        "parentId": 2, 
 
        "children": [ 
 
        { 
 
         "hierarchyId": 19, 
 
         "hierarchyLevel": 4, 
 
         "name": "Resource Request ", 
 
         "parentId": 5, 
 
         "children": [], 
 
         "docId": 19, 
 
         "docstatusid": 20 
 
        } 
 
        ] 
 
       } 
 
       ] 
 
      } 
 
      ] 
 
     } 
 
     ] 
 
    } 
 
    ] 
 
} 
 

 
let children = data.hierarchylist[0].children; 
 

 
while(children[0] && children[0].children && children[0].children.length) { 
 
    children = children[0].children; 
 
} 
 

 
console.log(children);

関連する問題