2015-08-13 123 views
0

我有一個像下面這樣的JSON對象。我想遍歷所有對象,它是子對象,並形成所有可能的嵌套組名稱:示例如下。通過JSON對象迭代並形成所有嵌套組合

{ 
    "groups": [ 
     { 
      "group": "group1", 
      "childrens": [ 
       { 
        "group": "group1_1", 
        "childrens": [] 
       }, 
       { 
        "group": "group1_2", 
        "childrens": [ 
         { 
          "group": "group1_2_1", 
          "childrens": [] 
         }, 
         { 
          "group": "group1_2_2", 
          "childrens": [] 
         }, 
         { 
          "group": "group1_2_3", 
          "childrens": [] 
         } 
        ] 
       }, 
       { 
        "group": "group1_3", 
        "childrens": [] 
       }, 
       { 
        "group": "group1_4", 
        "childrens": [] 
       } 
      ] 
     }, 
     { 
      "group": "group2", 
      "childrens": [ 
       { 
        "group": "group2_1", 
        "childrens": [] 
       }, 
       { 
        "group": "group2_2", 
        "childrens": [] 
       } 
      ] 
     } 
    ] 
} 


Q) how to genarete the below list from above JSON 
    group1 
    group1/group1_1 
    group1/group1_2 
    group1/group1_2/group1_2_1 
    group1/group1_2/group1_2_2 
    group1/group1_2/group1_2_3 
    group1/group1_3 
    group1/group1_4 
    group2 
    group2/group2_1 
    group2/group2_2 

我有一個像下面這樣的JSON對象。我想遍歷所有的對象,它是兒童,並形成所有可能的嵌套組名稱。

+2

太好了。你已經嘗試了什麼。請發佈您的代碼。 – Andy

+0

這是一個javascript對象,沒有這樣的東西作爲JSON對象(除非你把包含JSON的字符串作爲一個對象) - 但你沒有處理一個字符串,你正在處理一個javascript對象 –

+0

可能的重複[使用jQuery循環嵌套對象](http://stackoverflow.com/questions/17546739/loop-through-nested-objects-with-jquery) – ozil

回答

0

可以這樣的工作嗎?

for(var i in OBJECT){ 
    iterate(OBJECT[i]); 
} 

function iterate(item){ 

    for(var i in item){ 
     if(typeof item[i] == "object"){ 
      iterate(item[i]); 
     }else{ 
      doAction(); 
     } 
    } 

    var doAction = function(){ 
     ///// WHATEVER ACTION 
    } 

} 
+0

使用webworkers可獲得更好的性能。 – PRDeving