Как пройти через вложенные массивы / объекты в данных JSON?
Я пытаюсь отобразить несколько контрольных списков с отдельных карт в Trello. Я могу получить доступ к контрольному списку в виде нескольких вложенных объектов, но я не знаю, как пройти глубже, чтобы вытащить фактический текст и сделать его списком элементов.
Trello.get("cards/" + cardID + "/checklists", function(checklists) {
console.log(checklists);
});
данные: http://jsbin.com/OzEdUkU/2/edit
Как пройти весь путь до имени объектов массива checkItem?
1 ответ
Это позаботится обо всем в вашем наборе данных. Живая демо здесь (нажмите).
$.each(checkList, function(i, obj) {
console.log(obj);
$.each(obj.checkItems, function(j, checkItem) {
console.log(checkItem);
});
});
checkList
это массив (набор) объектов. В ваших примерах данных есть два объекта, вложенных в checkList
итак первый $.each
для каждого объекта.
Каждый объект имеет несколько свойств со строковыми значениями и свойством checkList
сам по себе является массивом, поэтому второй $.each
проходит через этот объект checkItems
массив. checkItems
содержит только свойства со строковыми значениями, поэтому дополнительное вложение отсутствует.
Также обратите внимание, что $.each
это просто сокращенная функция jQuery для традиционных циклов for и может быть заменена нормальным циклом for или более новой встроенной функцией js forEach
,