Выполнять код через указанное время
Выполнить код через указанное время
Выполнить код через указанное время можно через метод setTimeout().
function timer() {
// код, который выполнится через секунду
}
setTimeout(timer, 1000);
Период выполнения кода в setTimeout() задаётся в миллисекундах. На примере задано, что надо выполнить код через 1000 миллисекунд, т.е. через секунду.
Код выполнения также можно писать внутри setTimeout().
setTimeout(function() { /* код */ }, 1000);
Для отмены выполнения кода через заданное время используется clearTimeout().
let timeID = setTimeout(function() { /* код */ }, 1000);
// отменить выполнение кода через заданное время
clearTimeout(timeID);
Выполнять код каждую секунду
Периодическое выполнение кода можно сделать через метод setInterval().
function timer() {
// код, который будет выполняться каждую секунду
}
setInterval(timer, 1000);
Период выполнения кода в setInterval() также задаётся в миллисекундах. На примере задано, что надо выполнять код каждые 1000 миллисекунд, т.е. каждую секунду.
Отменить выполнение периодического выполнения кода можно через метод clearInterval().
let timeID = setInterval(function() { /* код */ }, 1000);
// отменить периодическое выполнение кода
clearInterval(timeID);
Время запуска setTimeout() и setInterval() нельзя изменить. Если надо изменить время запуска, то надо удалить текущий таймер, и создать новый.
Если выполнение clearInterval() задано каждую секунду, но код выполняется больше секунды, то следующий вызов таймера произодёт сразу же. Если надо гарантировано, чтобы между таймерами был интервал в одну секунду, то для этих целей рекомендуется использовать setTimeout(), т.е. каждый раз создавать новый тймер с интервалом в секунду.
Метод setInterval() рекомендуется использовать, когда надо выполнять код, например, через секунду. Если надо делать анимационные эффекты, то для этого рекомендуется использовать requestAnimationFrame().
Поддержать автора
Все статьи создаются и поддерживаются одним человеком,
если вам нравится контент, вы можете поддержать автора сайта
