Запуск таймера ў JavaScript
Хаця функцыя setTimeout
і не прызначана
для стварэння таймераў, аднак іх усё роўна
можна рабіць з яе дапамогай, калі скарыстацца
рэкурсіяй:
let i = 0;
function timer() {
setTimeout(function() {
console.log(++i);
timer(); // выклічам самі сябе
}, 1000);
}
timer();
Спыніць такі таймер можна проста не даўшы здарыцца рэкурсіі:
let i = 0;
function timer() {
setTimeout(function() {
console.log(++i);
if (i < 10) { // запускаем, толькі калі лічыльнік менш за 10
timer();
}
}, 1000);
}
timer();
Вывядзіце ў кансоль лік 0
. Праз
секунду вывядзіце лік 1
, праз дзве
секунды вывядзіце лік 2
, праз 3
секунды вывядзіце лік 3
. І так далей
да бясконцасці.