2013-05-05 2 views
0

У меня есть проблема с петлей через json-файл. Мне нужно сделать особую вещь для каждого из корневых элементов (я имею в виду c0, c1, c2, ....) и другие действия для каждого из их вложенных ключей (именно для каждой серии, которую имеет корневой ключ).цикл через объект JSON

, например, выполнить действие для c0 и делать какие-то действия для series.s0 и series.s1 с0 драм conitune ....

вот мой JSON файл:

{ 
    "c0": { 
     "name": "statistics", 
     "series": { 
      "s0": { 
       "name":"Inbound", 
       .... 
      }, 
      "s1": { 
       "name":"Outbound", 
       ... 

      } 
      } 
     }, 
    "c1": { 
     "name": "Packet statistics", 
     "series": { 
      "s0": { 
       "name":"pjS", 
       ... 
      }, 
      "s1": { 
       "name":"-----", 
       ... 
      } 
      } 
     }, 
    "c2": { 
     "name": "Bstatistics", 
     "series": { 
      "s0": { 
       "name":"Active", 
       .... 
      }, 
      "s1": { 
       "name":"SPI", 
       .... 

      } 
      } 
     }, 
    "c3": { 
     "name": "DPacket", 
     "series": { 
      "s0": { 
       "name":"policy", 
       ... 
      } 
      } 
     } 

     } 
+1

это не корневые элементы, а обычные. У меня такое чувство, что вы еще ничего не пробовали, как насчет 'for' или' google'? укажите пример кода, который вы попробовали, или похоже, что вы выполняете аутсорсинг своей работы в stackoverflow -.- – n00b

+0

И что вы пытались перекрыть? Какова ваша * актуальная проблема? – zmo

+0

Если вы контролируете структуру JSON, я бы предложил использовать массивы вместо объектов с инкрементирующими ключами, такими как «c0», «c1», «c2» и т. Д. – 2013-05-05 15:38:29

ответ

2

Попробуйте что-нибудь например:

var a = { 'c1': {...}, 'c2': {..}, 'c3': {...} }; 

console.log(a['c1']); // or alert(a['c1']) 

for (i in a) { 
    console.log(i); 
    for (j in a[i]) { 
     console.log(j); 
    } 
}