Остановка таймера JavaScript

Вы уже знаете, как запустить таймер, давайте теперь научимся его останавливать.

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

let timerId = setInterval(function() { console.log('!') }, 1000); alert(timerId); // выведет номер таймера

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

Для примера давайте запустим таймер, выводящий в консоль числа по возрастанию, начиная с 1. Остановим таймер, как только на экран будет выведено число 10:

let i = 0; let timerId = setInterval(function() { console.log(++i); if (i >= 10) { clearInterval(timerId); } }, 1000);

Пусть дана переменная, в которой изначально хранится число 10. Запустите таймер, который каждую секунду будет уменьшать значение этой переменной на 1 и выводить это значение в консоль. Как только значение переменной достигнет нуля - остановите таймер.