У меня есть массив объектов javascript: каждый объект содержит пары ключ/значение. Я пытаюсь выполнить итерацию через этот массив и удалить любой объект, значение которого для определенного ключа (например, «Промышленность») не соответствует заданному значению. Вот мой код, по какой-то причине это не перекручивания через весь массив, и я думаю, что это что-то делать с тем, что при удалении элемента счетчик цикла испорчен каким-то образом:jQuery итерации через элементы удаления цикла
var industry = 'testing';
var i = 0;
for (i = 0; i < assets_results.length; i++) {
var asset = assets_results[i];
var asset_industry = asset['industry'];
if (industry != asset_industry) { assets_results.splice(i,1); }
}
Есть идеи? Заранее спасибо.
Вы правильно, то есть причина. если вы вырезаете 1-й, тогда 2-й будет первым, а i будет 1, поэтому один элемент уже пропущен. –
Это не имеет никакого отношения к jquery –
Простое решение: итерация по массиву в обратном порядке. –