2.3 KiB
2.3 KiB
title | localeTitle |
---|---|
Window setTimeout Method | Метод windowTimeout |
Метод windowTimeout
Метод setTimeout()
вызывает функцию или вычисляет выражение после заданного количества миллисекунд.
Советы:
- 1000 мс = 1 секунда.
- Функция выполняется только один раз. Если вам нужно повторить выполнение, используйте метод
setInterval()
. - Используйте метод
clearTimeout()
чтобы предотвратить запуск функции.
Синтаксис метода setTimout()
следующий:
setTimeout(function, milliseconds, param1, param2, ...);
Например:
setTimeout(function(){ alert("Hello"); }, 3000);
Очень важная вещь в setTimeout()
заключается в том, что она будет выполняться асинхронно. Приведем пример:
console.log("A");
setTimeout(function(){ console.log("B"); }, 0);
console.log("C");
// The order in the console will be
// A
// C
// B
Не так, как обострилось! Но мы указываем только 0 секунд !!! Чтобы решить эту проблему и убедиться, что наш код будет выполняться синхронно, нам нужно просто вставить последнюю консоль в функцию
console.log("A");
setTimeout(function() {
console.log("B");
console.log("C");
}, 0);
// The order in the console will be
// A
// B
// C
Дополнительная информация:
Документация: MDN
Дополнительные примеры функции setTimeout: w3schools
Чтобы понять, что на самом деле происходит под капотом, просто смотрите это потрясающее видео Филипп Робертс: Какая черта - цикл событий? | ОАО «Союз 2014»