Die Unterscheidung zwischen „setInterval“ und „setTimeout“ in JavaScript
In JavaScript ist die Verwaltung asynchroner Vorgänge von entscheidender Bedeutung, und das sind zwei Schlüsselfunktionen Um dies zu erleichtern, sind „setInterval“ und „setTimeout“. Das Verständnis ihrer Unterschiede ist für eine effektive Codierung unerlässlich.
'setTimeout' vs 'setInterval':
setTimeout:
- Führt eine Funktion einmal nach einer angegebenen Verzögerung (Timeout) aus.
- Syntax: setTimeout(expression, timeout)
- Beispiel: setTimeout(function() { warning("Hello World!") ; }, 1000); // Warnt „Hallo Welt!“ in einer Sekunde.
setInterval:
- Führt eine Funktion wiederholt in angegebenen Intervallen aus (Timeout).
- Syntax: setInterval (Ausdruck, Zeitüberschreitung)
- Beispiel: setInterval(function() { console.log("Running Every Second"); }, 1000); // Protokolliert die Nachricht jede Sekunde.
Hauptunterschiede:
-
Ausführungshäufigkeit: setTimeout wird einmal ausgeführt, während setInterval wird wiederholt ausgeführt.
-
Zweck: setTimeout wird für verzögerte Aktionen oder Planung verwendet, während setInterval für periodische Aufgaben oder Animationen verwendet wird.
-
Steuerung: setInterval kann durch den Aufruf von clearInterval(intervalID) gestoppt werden, während setTimeout nach der Planung nicht explizit gestoppt werden kann.
-
Callback: setInterval weist dem Callback automatisch eine Intervall-ID zu, die zum Abbrechen verwendet werden kann. setTimeout weist keine Intervall-ID zu.
Beispiel:
Betrachten Sie zwei Szenarien:
- Alarm „Hallo Welt!“ einmal nach 5 Sekunden: SetTimeout verwenden.
- Protokollierung von „This is Running“ alle 2 Sekunden: SetInterval verwenden.
Code:
// Alert after 5 seconds
setTimeout(function() { alert("Hello World!"); }, 5000);
// Log every 2 seconds
var intervalID = setInterval(function() { console.log("This is Running"); }, 2000);
// Stop logging after 10 seconds
setTimeout(function() { clearInterval(intervalID); }, 10000);
Das obige ist der detaillierte Inhalt vonWas ist der Unterschied zwischen „setInterval' und „setTimeout' in JavaScript?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!
Stellungnahme:Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn