Такрори пахш кардан ба тугма барои оғози таймер дар JavaScript
Рамзи дар боло овардаи ман, дар асл, як мушкили муайян дорад. Ин мушкил дар ҳолате зоҳир мешавад, ки агар ба тугмаи мо чанд бор клик гузорем. Дар ин ҳолат ҳар як клик ба оғози таймери нав меоӣад.
Яъне, масалан, се бор пахш кардан ба тугма ба он хоҳад овард, ки се таймер оғоз карда мешавад, ва ҳар як аз ин таймерҳо арзиши ҳисобкунакро ба консолитоб мебарорад. Ин маънои онро дорад, ки арзишҳо се баробар зудтар тағйир хоҳанд ёфт!
Барои ҳалли мушкили тавсифшуда танҳо бояд онро тавре созад, ки такрори пахш кардан ба тугма ба оғози нави таймер наоӣад. Масалан, мумкин аст пас аз оғози таймер бастани пайванд аз тугма ба обработчики клики задукорӣ кардашуда:
let start = document.querySelector('#start');
start.addEventListener('click', function func() {
let i = 0;
setInterval(function() {
console.log(++i);
}, 1000);
this.removeEventListener('click', func); // обработчикро мебастем
});
Ҳалли шумо ба вазифаи гузаштаро гиред. Санҷед, ки такрори пахш кардан ба тугма ба суръатёбии ҳисоб меоӣад. Ин мушкилиро ислоҳ кунед.