Метод Window setTimeout()

Определение и использование

setTimeout() Метод вызывает функцию через несколько миллисекунд.

Комментарий:1 секунда = 1000 миллисекунд.

Совет

setTimeout() выполнить один раз.

Если вам нужно повторно выполнить, измените setInterval().

Используйте Метод clearTimeout() чтобы предотвратить запуск функции.

Чтобы удалить таймаут, используйте setTimeout() Возвратной id:

myTimeout = setTimeout(function, milliseconds);

Затем вы можете вызвать Метод clearTimeout() чтобы остановить выполнение:

clearTimeout(myTimeout);

См. также:

Метод clearTimeout()

Метод setInterval()

Метод clearInterval()

Пример

Пример 1

Приветствие, которое будет ждать 5 секунд:

const myTimeout = setTimeout(myGreeting, 5000);

Попробуйте сами

Пример 2

Используйте clearTimeout(myTimeout), чтобы остановить выполнение myGreeting:

const myTimeout = setTimeout(myGreeting, 5000);
function myStopFunction() {
  clearTimeout(myTimeout);
}

Попробуйте сами

Более примеров можно найти в нижней части страницы.

Синтаксис

setTimeout(function, milliseconds, param1, param2, ...)

Параметры

Параметры Описание
function Обязателен. Функция для выполнения.
milliseconds

Опционально. Количество миллисекунд, в ожидании выполнения.

Стандартное значение 0.

param1, param2,...

Опционально. Параметры, переданные функции.

IE9 и более ранние версии не поддерживают.

Возвратное значение

Тип Описание
Числом.

ID таймера.

Пожалуйста, свяжите этот id с clearTimeout(idМетод Используйте вместе, чтобы отменить таймер.

Поддержка браузеров

Поддерживается всеми браузерами setTimeout():

Chrome IE Edge Firefox Safari Opera
Chrome IE Edge Firefox Safari Opera
Поддержка Поддержка Поддержка Поддержка Поддержка Поддержка

Более примеров

Пример 3

Отображение окна предупреждения через 3 секунды (3000 миллисекунд):

let timeout;
function myFunction() {
  timeout = setTimeout(alertFunc, 3000);
}
function alertFunc() {
  alert("Hello!");
}

Попробуйте сами

Пример 4

Отображение временного текста:

let x = document.getElementById("txt");
setTimeout(function(){ x.value = "2 seconds" }, 2000);
setTimeout(function(){ x.value = "4 seconds" }, 4000);
setTimeout(function(){ x.value = "6 seconds" }, 6000);

Попробуйте сами

Пример 5

Откройте новое окно и закройте его через три секунды (3000 миллисекунд):

const myWindow = window.open("", "", "width=200, height=100");
setTimeout(function() {myWindow.close()}, 3000);

Попробуйте сами

Пример 6

Продолжительный подсчет - но можно остановить подсчет:

function startCount()
function stopCount()

Попробуйте сами

Пример 7

Создание часов с помощью计时ных событий:

function startTime() {
  const date = new Date();
  document.getElementById("txt").innerHTML = date.toLocaleTimeString();
  setTimeout(function() {startTime()}, 1000);
}

Попробуйте сами

Пример 8

Передайте параметры функции (не работает в IE9 и более ранних версиях):

setTimeout(myFunc, 2000, "param1", "param2");

Попробуйте сами

Пример 9

Но если вы используете анонимную функцию, она будет работать во всех браузерах:

setTimeout(function() {myFunc("param1", "param2")}, 2000);

Попробуйте сами