freeCodeCamp/guide/russian/javascript/window-settimeout-method/index.md

2.3 KiB
Raw Blame History

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»