2014-02-18 4 views
0

Я использую underscore.js для разработки node.js. Мне нужна помощь в получении определенного набора данных из json-файла, но я не могу понять, как его разобрать, чтобы вернуть то, что мне нужно.JSON Parsing Hierarchy

JSON Образец

{ 
     "books": [{ 
     "book1": { 
      "chapters": [{ 
      "ch1" : { 
       "v1": "v1", 
       "v2": "v2" 
      }, 
      "ch2" : { 
       "v1": "v1", 
       "v2": "v2" 
      } 
      }] 
     }, 
     "book2": { 
      "chapters": [{ 
      "ch1" : { 
       "1": "v1", 
       "2": "v2" 
      }, 
      "ch2" : { 
       "1": "x1", 
       "2": "x2" 
      } 
      }] 
     } 
     }] 
    }   

А вот мой underscore.js код

_.each(parse.books[0], function (v, b) { 
     return b; 
     }); 

Который возвращает: Книга1 book2

Теперь, мой следующий шаг, когда у меня возникают проблемы , Мне нужно получить все главы для каждой книги в пределах той же самой функции. Вот что я хочу сделать:

_.each(parse.books[0], function (v, b) { 
      return b; 
    //Get Chapters 
     _.each(bible.books[0].b.chapters[0], function (v, c) { 
      return c; 
     }); 
     }); 

Когда я использую «б» во втором .each «Ъ» не называет каждое имя книги в цикле, как я бы ожидать, что она. Я не хочу писать каждое имя каждой книги. Мне нужно это в цикле. Может кто-нибудь помочь?

ответ

1

Попробуйте bible.books[0][b].chapters[0] вместо bible.books[0].b.chapters[0].

+0

СПАСИБО СМОТРЕТЬ! Смешно, что я попробовал это, как вы показали, но с периодом между следующим: [0]. [B]. Забавно, как 1 период может полностью выбросить все! – Bob