Как заставить setTimeout задержать код после него?

setTimeout(() => console.log(1), 1000)
console.log(2);


нужно сделать так, чтобы seTimeout ждал (НЕ выполняя код ПОСЛЕ него), пока код внутри него не выполнится (после 1сек) и выводился результат 1, 2
  • Вопрос задан
  • 105 просмотров
Решения вопроса 1
joeberetta
@joeberetta Куратор тега JavaScript
Читай: https://epdf.pub/google-for-dummies.html
function sleep(ms) { 
 return new Promise(resolve => setTimeout(resolve, ms)); 
}
// вызывайте его внутри async функции так:
async function delayedGreeting() { 
 console.log("Hello"); 
 await sleep(2000); 
 console.log("World!"); 
 await sleep(2000); 
 console.log("Goodbye!"); 
}
//В обычных функциях так:
sleep(2000).then(() => { console.log("World!"); });
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@McBernar
Ну так поместите второй лог внутрь таймаута.

Но вы, наверное, хотите другое. Гуглите async await.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы
24 нояб. 2024, в 14:37
3000 руб./в час
24 нояб. 2024, в 13:04
500 руб./в час
24 нояб. 2024, в 12:29
3000 руб./за проект