Задать вопрос
@marink0

SetTimeout и for как сделать их работать вместе?

Почему это не работает и выдает задержку только единоразово? КАк сделать задержку между каждой итерацией лупа?

let array = ['111', '222', '333', '444']
for (let i = 0; i < array.length; i++) {
  setTimeout(() => {
    console.log(array[i])
  }, 1000)
}
  • Вопрос задан
  • 101 просмотр
Подписаться 1 Простой 5 комментариев
Решения вопроса 1
DarthJS
@DarthJS
В данной ситуации лучше рекурсия подойдет:

let arra = ['111', '222', '333', '444']
function deley (iterator) {
	
   let i = iterator || 0;
   setTimeout(function () {

  console.log(arra[i]);
  i++;
  if(i < arra.length){
   deley(i)
}
}, 2000);
}

deley();


P.S. никогда не забывай указывать условие выхода :)
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы