Kontrolle wiederkehrender Timer mit setInterval und clearInterval
In Ihrem Code wollten Sie drawAll() einmal aufrufen, wenn eine bestimmte Taste gedrückt wurde. Die Funktion setInterval richtet jedoch einen wiederkehrenden Timer ein, der drawAll() wiederholt aufruft. Um dies zu beheben, können wir „clearInterval“ verwenden, um die Ausführung der Timer-Schleife anzuhalten.
setInterval erstellt einen wiederkehrenden Timer und gibt ein Handle zurück. Dieses Handle dient als Kennung, die von clearInterval verwendet werden kann, um die Auslösung des Timers zu stoppen. So funktioniert es:
var handle = setInterval(drawAll, 20); // When you want to cancel it: clearInterval(handle); handle = 0; // This marks the interval as cleared
In Browsern ist das Handle garantiert eine Zahl ungleich Null. Daher bedeutet die Verwendung von 0 als Handle-Wert, dass kein Timer eingestellt ist.
Um eine Funktion so zu planen, dass sie nur einmal ausgelöst wird, können Sie setTimeout anstelle von setInterval verwenden. setTimeout führt eine Funktion einmal nach einer angegebenen Verzögerung aus. Es gibt ein Handle zurück, das mit „clearTimeout“ verwendet werden kann, um den Funktionsaufruf abzubrechen, bevor er bei Bedarf ausgeführt wird:
setTimeout(drawAll, 20);
Das obige ist der detaillierte Inhalt vonWie kann ich wiederkehrende Timer in JavaScript mithilfe von „setInterval' und „clearInterval' steuern?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!