NEWS
Schleife mit setTimeout + clearTimeout
-
Hallo Gemeinde
Ich stehe gerade ein wenig auf den Schlauch.
Ich möchte in einer Schleife die Befehle Zeitversetzt ausgeführt werden. Soweit kein Problem.
Aber ich möchte das wenn die Funktion wieder aufgerufen wird die aktuellen Timer der läuft wirder gelöscht wird und von neuen anfängt.
Nicht gleichzeitig z.B. 5 timer laufen.
Dies wollte ich mit clearTimeout lösen. Aber irgendwie bekomme ich dies nicht hin.Hier erstmal der script für den Schleifen Timer
function schleifen_timer(){ for (let i = 0; i<10; i++){ setTimeout(function timer_1(){ console.log ('myscript '+ i) }, i*1000); } }
Wie stelle ich das an das clearTimeout funktioniert wenn die funktion neu aufgerufen wird.
Schon mal vielen Dank an alle
-
@pat
In der Schleife werden 10 Timer erzeugt. Versuche es mal so:var timers = []; function schleifen_timer(){ for (let i = 0; i<10; i++){ clearTimeout(timers[i]); timers[i] = setTimeout(function() { console.log ('myscript '+ i) }, i*1000); } }
-