У меня очень мало опыта работы с jSON
Моя проблема заключается в получении значения из вложенных массивов.
Я пробовал for loops
и .each()
, но по некоторым причинам он никогда не работает, как ожидалось.
Я пытаюсь получить доступ к artname.artists.name
для каждого artname
объекта.
Я могу console.log сделать это, выполнив console.log(data.artname[0].artists.name);
Я пытался использовать для l oop внутри .each ();
Может кто-нибудь помочь мне здесь?
Вот пример кода май
var i;
var actors = data.artname;
var text = "";
for (i=0; i <actors.length; i++){
text += actors[i] + "<br>";
console.log(actors.name);
}
Я могу получить доступ к role
из artname
, но я не могу go глубже и получить доступ к имени актера из artists
$.each(data.artname, function(i, arts){
$("#arts").append( '<li>' + 'Role:' + arts.role + " " + '</li>');
$.each(arts.artists, function(j,actor){
$("#actor").append( '<li>' + 'Actor:' + actor.name + '</li>'); // gives undefined
});
});
Вот часть файла JSON.
"data": {
"artname" : [ {
"nr" : 123,
"role" : "john booth",
"artists" : {
"nr" : 81,
"name" : "Tom Tomson",
"birthday" : "1954-01-11",
"allowed" : true,
"printForm" : "Tom Hanks (11.01.1954-15.04.1999)"
},
"profession" : {
"name" : "actors"
}
},
"artname" : [ {
"nr" : 153,
"role" : "clair luv",
"artists" : {
"nr" : 141,
"name" : "Ron Ronson",
"birthday" : "1924-03-11",
"allowed" : true,
"printForm" : "Ron Ronsson (11.03.1924-11.04.1959)"
},
"profession" : {
"name" : "actors"
}
},
"artname" : [ {
"nr" : 423,
"role" : "john booth",
"artists" : {
"nr" : 64,
"name" : "Jane Joe",
"birthday" : "1974-01-11",
"allowed" : true,
"printForm" : "Jane Doe (11.01.1974-15.04.1999)"
},
"profession" : {
"name" : "actors"
}
}
}