Как пройти через вложенные массивы / объекты в данных 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,

Другие вопросы по тегам