2016-09-27 3 views
-4

Mein Timer stoppt nur, wenn clearInterval unterhalb der Funktion setInterval definiert ist. Jede Erklärung würde sehr geschätzt werden. DankesetInterval, warum stoppt der Timer nur, wenn die clearInterval-Funktion über der setInterval-Funktion liegt?

enter image description here

+0

Zu viel Code fehlt, um die Frage zu beantworten. –

+0

Sie können keine nicht gestartet Timer stoppen –

+0

_Questions Debugging-Hilfe zu suchen („warum dieser Code nicht?“) Muss das gewünschte Verhalten umfassen, um ein bestimmtes Problem oder Fehler und ** den kürzesten Code notwendig, sie in die reproduzieren Frage selbst **. Fragen ohne eine klare Problemstellung sind für andere Leser nicht nützlich. Siehe: [Erstellen eines minimalen, vollständigen und überprüfbaren Beispiels] (https://stackoverflow.com/help/mcve) ._ – Andreas

Antwort

0

setInterval() tatsächlich beginnt, einen Timer, wo die angegebene Methode/Routine ausgeführt wird, nachdem das angegebene Intervall abgelaufen ist.

clearInterval() auf der anderen Seite verwendet wird th eTimer von einem früheren Aufruf von setInterval()

Deshalb begann zurückgesetzt, es ist logisch, um einen Anruf zu clearInterval() nach setInterval() zu machen. Außerdem benötigt clearInterval() als Argument die ID des zu stoppenden Timers, die von setInterval() zurückgegeben wird. Sie können also nicht clearInterval() vor setInterval() aufrufen, da die ID des Timers nicht gelöscht werden muss.