Я пытаюсь получить данные из источника в JSON. Я могу получить некоторые данные, такие как "episode_name" и "обзор", однако у меня возникают проблемы с некоторыми данными, такими как "писатели" и "directer".
Это код, который я использую вместе с моим примером
var jsontext = '{"first_aired":"2004-06-06","episode_name":"Let Em Eat Cake","overview":"Blahh Blahh","writers":[{"name":"Jim Vallely"},{"name":"Mitchell Hurwitz"}],"directors":[{"name":"Paul Feig"}],"guest_stars":[{"name":"Ian Roberts"},{"name":"Judy Greer"},{"name":"Stacey Grenrock-Woods"},{"name":"Matt Walsh"},{"name":"Alessandra Toreson"}]}';
var titles = JSON.parse(jsontext);
document.write(titles.episode_name);
В основном проблема сводится к тому, что невозможно получить данные на многоуровневой основе. Я не уверен, как это сделать.
Вот мой пример в JS Fiddle для его редактирования, чтобы показать мне. http://jsfiddle.net/k3V9p/1/
Спасибо
Субобъект writers
представляет собой массив, поэтому вы можете получить доступ к его элементам и подобъектам следующим образом:
titles.writers[0].name
Вы можете собирать имена авторов с помощью цикла
var jsontext = '{"first_aired":"2004-06-06","episode_name":"Let Em Eat Cake","overview":"Blahh Blahh","writers":[{"name":"Jim Vallely"},{"name":"Mitchell Hurwitz"}],"directors":[{"name":"Paul Feig"}],"guest_stars":[{"name":"Ian Roberts"},{"name":"Judy Greer"},{"name":"Stacey Grenrock-Woods"},{"name":"Matt Walsh"},{"name":"Alessandra Toreson"}]}';
var titles = JSON.parse(jsontext);
var names = [];
$.each(titles.writers, function(i,it){
names.push(it.name);
})
alert(names);