Search code examples
jqueryarrayseachnested-loopsjavascript-objects

jquery each loop through array with multiple objects


I have a javascript array of multiple objects like the one bellow :

var myArray = [{

year:'2015',
model:'BMW',
used:false,
extras: [{buckets:'no',sportWheels:'yes'},{buckets:'no',sportWheels:'yes'}],
color:'blue'

.....

}];

What i am trying to do is to loop this array and pass the results into a list, something like this :

$.each(myArray, function(i, e){
var year = myArray[i].year;
var model = myArray[i].model;
var used = myArray[i].used;
var color = myArray[i].color;
var extras = myArray[i].extras; 

$('.list').append(year+model+used+color);
});

Everything goes well till i want to gather the results of extras. I dont know what to do can anyone suggest something. I thought about a second loop but doesnt work!!!


Solution

  • do each loop for myArray[i].extras

        $.each(myArray, function(i, e){
            var year = myArray[i].year;
            var model = myArray[i].model;
            var used = myArray[i].used;
            var color = myArray[i].color;
            var extras = myArray[i].extras; 
            var str=''; 
            $.each(myArray[i].extras, function (index, data) {
                // alert(data.buckets);
                str+='<div>' + year + model + used + color + data.buckets + data.sportWheels +'</div>';
            })
            $('.list').append(str);
            //$('.list').append(year+model+used+color);
        });