$.each() with nested array
each, jquery, json
Solution
If you want to use `$.each` you can try this:-
$.each(myArray.songs, function (i, ob) {
$.each(ob, function (ind, obj) {
console.log("key:" + ind + " value:" + obj);
});
});
Problem
First of all, forgive me if I didn't identify the right type of array, however I can't seem to figure this out. I'm trying to run this array in query: ``` var myArray = {"artists":[{ "a1":"Adam Sandler", "a2":"Adam Lambert", "a3":"Avril Levine", "a4":"Backstreet Boys", "a5":"Blackstreet", "a6":"Black Eye Peas", "a7":"Cool and the Gang", "a8":"Chicago", "a9":"Charlie Manson" }], "songs":[{ "s1":"Grow Old With You", "s2":"Whatdaya Want From Me", "s3":"Yea yea", "s4":"Quit Playing Games With My Heart", "s5":"No Digity", "s6":"Meet Me Half way", "s7":"Doo wa ditty", "s8":"Fight for your honor", "s9":"Charlies Song" }], "genre":[{ "g1":"Pop", "g2":"Pop", "g3":"Alternative", "g4":"R & B", "g5":"R & B", "g6":"Hip-Hop", "g7":"Funk", "g8":"Soft Rock", "g9":"Rock" }]}; ``` When I click a button (say for title) I don't know how to have it automatically go through the array. This is what I have for my button: ``` $.each(myArray.songs, function(e,i){ console.log("e:"+e+" - i:"+i+" - "+myArray.songs[e].i); }); ``` This does work, however when it reaches to the console.log, this is what I get: e:0 - i:[object Object] - undefined I don't know how to get "i" to work, it always gives me [Object Object]. I replace I with the actual id in the array, it works. Thank you.