@Rapen

Почему происходит бесконечный цикл?

Есть список инпутов которые проверяются на checked, по ним создается стек и создаются jsx элементы которые будут отрендерены,
Код
. При нажатии все зависает, и ничего не происходит, если убратьi--, то метод handleRemove почему-то удаляет не те todo элементы, которые нужно по-сути
let cb = document.getElementsByClassName('checkBoxes');
		 for(let i=0; i< cb.length; i++){
			 if(cb[i].checked == true){
                              currentState.splice(i,1);
			       i--;
			 }
  • Вопрос задан
  • 132 просмотра
Пригласить эксперта
Ответы на вопрос 2
xmoonlight
@xmoonlight
https://sitecoder.blogspot.com
Зачем менять итеративную переменную два раза?
Нужно убавлять - измените условие внутри цикла на обратное.
Ответ написан
ixon
@ixon

Потому что вы возвращаете итератору его исходное значение. итератор даёт неверные значения из-за зоны видимости. Попробуйте передавать значение итератора в качестве функции.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы