Ответ 1
Достаточно ли это?
$.each(
data.collection,
function(i) {
if (i > 0)
DoStuff();
}
);
У меня есть список JSON, который я хочу перебрать, но пропустите первую запись, например:
$.each(
data.collection,
function() { DoStuffButOnlyIfNotTheFirstOne(); }
);
Любые идеи?
Достаточно ли это?
$.each(
data.collection,
function(i) {
if (i > 0)
DoStuff();
}
);
$.each(
data.collection,
function(i) {
if(i)
DoStuffButOnlyIfNotTheFirstOne();
}
);
или, возможно, более эффективно:
$.each(
data.collection.slice(1),
function() {
DoStuff();
}
);
Вы можете использовать старый добрый подход firstFlag:
var firstFlag = true;
$.each(
data.collection,
function() {
if(!firstFlag) DoStuffButOnlyIfNotTheFirstOne();
firstFlag = false;
}
Но вместо этого я бы рекомендовал сначала отфильтровать вашу коллекцию данных, чтобы удалить первый элемент с помощью селектора.
Почему бы не использовать slice, чтобы удалить первый, а затем использовать $. каждый без каких-либо условий (это может увеличить производительность для большого набора массивов)
var collection = data.collection.slice(0 , 1);
$.each(collection,function() {
DoStuff();
});
$.each(
data.collection,
function(i) { if (i>0) DoStuffButOnlyIfNotTheFirstOne(); }
);