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

Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску
(Новая страница: «{{Espruino/Панель перехода}} {{Перевод от Сubewriter}} {{Myagkij-редактор}} =<ref>[]</ref>= <syntaxhighlight lang="javascri...»)
 
Нет описания правки
 
(не показаны 4 промежуточные версии 2 участников)
Строка 3: Строка 3:
{{Myagkij-редактор}}
{{Myagkij-редактор}}


=<ref>[]</ref>=
=Функция setTimeout()<ref>[https://www.espruino.com/Reference#t_l__global_setWatch www.espruino.com - function setWatch]</ref>=


==Синтаксис==


<syntaxhighlight lang="javascript">
function setWatch(function, pin, options)
</syntaxhighlight>
==Параметры==
* '''function''' – функция или строка, которую нужно выполнить
* '''timeout''' – время до выполнения функции (максимум – ''«3153600000000»'', т.е. ''100 лет'')
* '''args, ...''' – опциональные аргументы, которые будут переданы функции обратного вызова в момент ее выполнения
==Описание==
Задает функцию обратного вызова (или выполняет строку), которая будет выполнена '''ЕДИНОЖДЫ''' после истечения таймаута (он задается в миллисекундах).


Возвращает идентификатор, который затем можно передать функции [[Espruino:Справочник по API/Глобальные методы, переменные и объекты/Функция clearTimeout()|clearTimeout()]].


Пример:


<syntaxhighlight lang="javascript">
setTimeout(function () {
  console.log("Привет мир");
}, 1000);
// или
setTimeout('console.log("Привет мир");', 1000);
// оба варианта напечатают 'Привет мир' спустя секунду
</syntaxhighlight>


<syntaxhighlight lang="javascript" enclose="div">
Вы также можете задать дополнительные аргументы, которые будут переданы функции обратного вызова в момент ее выполнения. Например:


<syntaxhighlight lang="javascript">
setTimeout(function (a,b) {
  console.log(a+" "+b);
}, 1000, "Привет", "Мир");
// печатает 'Привет мир' спустя секунду
</syntaxhighlight>
</syntaxhighlight>
Если вы хотите предотвратить вызов этой функции, вызовите функцию [[Espruino:Справочник по API/Глобальные методы, переменные и объекты/Функция clearTimeout()|clearTimeout()]] и в качестве аргумента передайте ей идентификатор, возвращенный во время последнего вызова [[Espruino:Справочник по API/Глобальные методы, переменные и объекты/Функция setTimeout()|setTimeout()]].
{{Примечание1|Если была вызвана [[Espruino:Справочник по API/Глобальные методы, переменные и объекты/Функция setDeepSleep()|setDeepSleep(true)]], и интервал ''больше 5 секунд'', [[Espruino]] может выполнить этот интервал с опозданием ''до 1 секунды''. Это происходит из-за того, что [[Espruino]] может просыпаться из режима глубокого сна только раз в секунду – в случае более раннего пробуждения [[Espruino]] будет просто зря расходовать электроэнергию в ожидании нужного момента.}}


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


{{ads}}
 


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


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

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

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


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

Синтаксис

function setWatch(function, pin, options)

Параметры

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

Описание

Задает функцию обратного вызова (или выполняет строку), которая будет выполнена ЕДИНОЖДЫ после истечения таймаута (он задается в миллисекундах).

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

Пример:

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

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

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

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

Примечание

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

См.также

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