В php есть очень удобный цикл перебора массивов — foreach. К сожалению, в Javascript нет его прямого аналога, но нужный нам функционал обеспечит jQuery.
Сразу скажу, что цикл foreach, по своей сути, необходим для перебора ассоциативных массивов, которыми в javascript являются объекты.
Для перебора простых массивов следует использовать следующий вариант:
var array = [1, 3, 5, 7] ;
for( i in array ){
console.log( array[i] );
}
В случае же с объектами — следует использовать jquery-метод $.each(). Привожу простой пример его работы:
var ob = [
{
id: 11,
firstname: "Сергей"
},
{
id: 21,
firstname: "Максим"
},
{
id: 31,
firstname: "Федор"
},
];
$.each(myObjects, function(){
console.log("ID: " + this.id);
console.log("Имя: " + this.firstname);
});
Как видим, метод проходит по объекту, который мы передаем первым параметром и для каждого элемента вызывает анонимную функцию, которая передана вторым параметром.
При этом ключ и значение объекта будут доступны в данной функции в качестве первого и второго входящего параметра, соответственно. Например:
var json = [
{ 'красный': '#f00' },
{ 'зеленый': '#0f0' },
{ 'голубой': '#00f' }
];
$.each(json, function () {
$.each(this, function (color, hex) {
console.log(color + '=' + hex);
});
});