setTimeout()

Метод JavaScript setTimeout() применяется для вызова функции или выполнения фрагмента кода после указанного промежутка времени в миллисекундах.

Синтаксис setTimeout

MDN

var timeoutID = window.setTimeout(func, [delay, param1, param2, ...]);
var timeoutID = window.setTimeout(code, [delay]);

Microsoft

var retval = window.setTimeout(expression, msec, language);
  • expression — функция или строка, которая указывает на код, который будет выполнен через заданный промежуток времени.
  • msec указанное количество время в миллисекундах.
  • language язык программирования JavaScript.

В обоих случаях синтаксис использует window.setTimeout. По сути, setTimeout и window.setTimeout одно и тоже, разница только в том, что второй способ как глобальный объект. Редко когда нужен порядок применения этого метода, поэтому почти всегда применяют setTimeout().

Примеры setTimeout

Чаще всего метод setTimeout используют для всплывающего или модального окна, которое появится через несколько секунд после открытия веб-страницы или нажатия кнопки.

setTimeout ссылается на функцию в качестве первого аргумента:

function explode(){
  alert("Появилось");
}
setTimeout(explode, 2000);

Переменная, которая ссылается на функцию:

var explode = function(){
  alert("Появилось");
};
setTimeout(explode, 2000);

Не известная функция:

setTimeout(function(){
  alert("Появилось");
}, 2000);

setTimeout одной строкой (не рекомендуется!):

setTimeout("alert('Появилось');", 2000);

Применить setTimeout в jQuery:

$(window).load(function() {
  setTimeout(function(){
  // вызов через 2 сек.
  }, 2000);
});

В jQuery версии 1.4 был добавлен метод delay(), который позволяет отложить выполнение.