Espruino:Справочник по API/Глобальные методы, переменные и объекты/Функция setInterval(): различия между версиями

Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску
Нет описания правки
Нет описания правки
 
(не показаны 2 промежуточные версии 1 участника)
Строка 7: Строка 7:
==Синтаксис==
==Синтаксис==


<syntaxhighlight lang="javascript" enclose="div">
<syntaxhighlight lang="javascript">
function setInterval(function, timeout, args, ...)
function setInterval(function, timeout, args, ...)
</syntaxhighlight>
</syntaxhighlight>
Строка 25: Строка 25:
Например:
Например:


<syntaxhighlight lang="javascript" enclose="div">
<syntaxhighlight lang="javascript">
setInterval(function () {
setInterval(function () {
   console.log("Привет мир");
   console.log("Привет мир");
Строка 36: Строка 36:
Вы также можете задать дополнительные аргументы, которые будут переданы функции обратного вызова в момент ее выполнения. Например:
Вы также можете задать дополнительные аргументы, которые будут переданы функции обратного вызова в момент ее выполнения. Например:


<syntaxhighlight lang="javascript" enclose="div">
<syntaxhighlight lang="javascript">
setInterval(function (a,b) {
setInterval(function (a,b) {
   console.log(a+" "+b);
   console.log(a+" "+b);
Строка 45: Строка 45:
Если вам нужно, чтобы эта функция перестала вызываться, вызовите функцию [[Espruino:Справочник по API/Глобальные методы, переменные и объекты/Функция clearInterval()|clearInterval()]] и в качестве аргумента передайте ей идентификатор (число), возвращенный во время последнего вызова ''setInterval()''.
Если вам нужно, чтобы эта функция перестала вызываться, вызовите функцию [[Espruino:Справочник по API/Глобальные методы, переменные и объекты/Функция clearInterval()|clearInterval()]] и в качестве аргумента передайте ей идентификатор (число), возвращенный во время последнего вызова ''setInterval()''.


'''Примечание:''' Если была вызвана [[Espruino:Справочник по API/Глобальные методы, переменные и объекты/Функция setDeepSleep()|setDeepSleep(true)]], и интервал ''больше 5 секунд'', [[Espruino]] может выполнить этот интервал с опозданием ''до 1 секунды''. Это происходит из-за того, что Espruino может просыпаться из режима глубокого сна только раз в секунду – в случае более раннего пробуждения Espruino будет просто зря расходовать электроэнергию в ожидании нужного момента.
{{Примечание1|Если была вызвана [[Espruino:Справочник по API/Глобальные методы, переменные и объекты/Функция setDeepSleep()|setDeepSleep(true)]], и интервал ''больше 5 секунд'', [[Espruino]] может выполнить этот интервал с опозданием ''до 1 секунды''. Это происходит из-за того, что Espruino может просыпаться из режима глубокого сна только раз в секунду – в случае более раннего пробуждения Espruino будет просто зря расходовать электроэнергию в ожидании нужного момента.}}


=См.также=
=См.также=


{{ads}}
 


=Внешние ссылки=
=Внешние ссылки=
Строка 55: Строка 55:
<references />
<references />


{{Навигационная таблица/Espruino}}
{{Навигационная таблица/Портал/Espruino}}
{{Навигационная таблица/Телепорт}}
 
[[Категория:Функция]]
[[Категория:Функция]]

Текущая версия от 09:49, 4 июня 2023

Перевод: Максим Кузьмин
Проверка/Оформление/Редактирование: Мякишев Е.А.


Функция setInterval()[1]

Синтаксис

function setInterval(function, timeout, args, ...)

Параметры

  • function – функция или строка, которую нужно выполнить
  • timeout – интервал между вызовами функции (максимум – «3153600000000», что означает 100 лет)
  • args, ... – опциональные аргументы, передаваемые выполняемой функции

Описание

Задает функцию обратного вызова (или выполняет код в заданной строке) и интервал (в миллисекундах), с которым она будет вызываться. Эта функция будет вызываться ПЕРИОДИЧЕСКИ.

Возвращает идентификатор, который затем можно будет передать функции clearInterval().

Например:

setInterval(function () {
  console.log("Привет мир");
}, 1000);
// или
setInterval('console.log("Привет мир");', 1000);
// оба варианта печатают 'Привет мир' раз в секунду

Вы также можете задать дополнительные аргументы, которые будут переданы функции обратного вызова в момент ее выполнения. Например:

setInterval(function (a,b) {
  console.log(a+" "+b);
}, 1000, "Привет", "мир");
// печатает 'Привет мир' раз в секунду

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

Примечание

Если была вызвана setDeepSleep(true), и интервал больше 5 секунд, Espruino может выполнить этот интервал с опозданием до 1 секунды. Это происходит из-за того, что Espruino может просыпаться из режима глубокого сна только раз в секунду – в случае более раннего пробуждения Espruino будет просто зря расходовать электроэнергию в ожидании нужного момента.

См.также

Внешние ссылки