Вы уже знаете, как запустить таймер, давайте теперь научимся его останавливать.
Для этого вам необходимо знать, что каждый таймер, запущенный с помощью функции 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 и выводить это значение в консоль. Как только значение переменной достигнет нуля - остановите таймер.