Почему мои элементы JavaScript для цикла пропускают? [Дубликат]

На этот вопрос уже есть ответ здесь:

getElementsByClassName - Странное поведение 3 ответа

у меня естьfor цикл, который проходит через набор элементов, удаляя'selected' класс от каждого. Тем не менее, он пропускает каждую вторую итерацию. Я обнаружил, что могу обойти это, добавивj--, что я думаю, хорошо, за исключением удлинения моего кода. Но мне интересно, может кто-нибудь объяснить, почему он пропускает, и, возможно, предложить более краткий способ написания этого кода? (Я все еще изучаю веревки и хочу убедиться, что я понимаю, что происходит.)

var selections = document.getElementsByClassName(name + 'selected');
for (var j = 0; j < selections.length; j++) {
  selections[j].classList.remove('selected');
  j--; // the fix
}

// where name is a present variable

Спасибо за ваше время!

Ответы на вопрос(2)

Ваш ответ на вопрос