Spec-Zone.ru › Web APIs

WorkerGlobalScope: метод setInterval()

Базовая поддержка Широко доступно

Эта функция хорошо зарекомендовала себя и работает во многих устройствах и версиях браузеров. Она доступна в браузерах с июля 2015 года.

  • Подробнее
  • Полная совместимость
  • Отправить отзыв

Примечание: Эта функция доступна только в Web Workers.

Метод setInterval() интерфейса WorkerGlobalScope многократно вызывает функцию или выполняет фрагмент кода с фиксированной задержкой между вызовами.

Этот метод возвращает идентификатор интервала, который однозначно идентифицирует интервал, поэтому вы можете удалить его позже, вызвав clearInterval().

Этот метод также доступен в контекстах окна: для подробного описания setInterval(), см. страницу Window.setInterval().

Синтаксис

setInterval(code)
setInterval(code, delay)

setInterval(func)
setInterval(func, delay)
setInterval(func, delay, arg1)
setInterval(func, delay, arg1, arg2)
setInterval(func, delay, arg1, arg2, /* …, */ argN)

Параметры

func

Функция function, которая будет выполняться каждые delay миллисекунд. Первое выполнение произойдет через delay миллисекунд.

code

Необязательный синтаксис позволяет включить строку вместо функции, которая компилируется и выполняется каждые delay миллисекунд. Этот синтаксис не рекомендуется по тем же причинам, по которым использование eval() представляет собой угрозу безопасности.

delay Необязательно

Время в миллисекундах (тысячных долях секунды), которое таймер должен ожидать между выполнениями указанной функции или кода. По умолчанию 0, если не указано. Подробности о допустимом диапазоне значений delay см. в разделе Ограничения задержки.

arg1, …, argN Необязательно

Дополнительные аргументы, которые передаются функции, указанной в func после истечения таймера.

Значение, возвращаемое методом

Возвращаемый intervalID — числовое ненулевое значение, идентифицирующее таймер, созданный вызовом setInterval(); это значение можно передать в clearInterval() для отмены интервала.

Полезно помнить, что setInterval() и setTimeout() используют один и тот же пул идентификаторов, и clearInterval() и clearTimeout() технически могут быть использованы взаимозаменяемо. Однако для ясности следует стараться всегда использовать их совместно, чтобы избежать путаницы при сопровождении кода.

Примечание: Аргумент delay преобразуется в целое число со знаком в 32 бита. Это фактически ограничивает delay до 2147483647 мс, примерно 24,8 дней, поскольку он указан как целое число со знаком в IDL.

Примеры

См. примеры на странице setInterval().

Спецификации

Спецификация
HTML
# dom-setinterval-dev

Совместимость с браузерами

Рабочие столы Мобильные устройства
Chrome Edge Firefox Opera Safari Chrome Android Firefox for Android Opera Android Safari на IOS Samsung Internet WebView Android
setInterval 1 12 1 4 1 18 4 10.1 1 1.0 4.4
supports_parameters_for_callback 1 12 1 ≤15 1.2 18 4 ≤14 1 1.0 ≤37
worker_support 3 12 3.5 ≤12.1 4 18 4 ≤12.1 5 1.0 4.4

См. также

  • Полифил setInterval, который позволяет передавать аргументы в обратный вызов в core-js
  • Window.setInterval()
  • WorkerGlobalScope.clearInterval()
  • WorkerGlobalScope.setTimeout()
  • DedicatedWorkerGlobalScope.requestAnimationFrame()

© 2005–2024 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/WorkerGlobalScope/setInterval

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API