Detaillierte Erklärung der JavaScript-Timer

Detaillierte Erklärung der JavaScript-Timer

Kurze Einleitung

In JavaScript gibt es zwei Timer: setInterval() und setTimeout(), von denen jeder über eine Methode zum Abbrechen des Timers verfügt.

Dies sind alles Fensterobjekte, und das Fenster kann beim Aufruf weggelassen werden. Diese beiden Methoden sind nicht in der JavaScript-Spezifikation enthalten.

Es gibt vier mit der Timermethode verbundene Methoden.

Verfahren beschreiben
Intervall festlegen Rufen Sie in regelmäßigen Abständen eine Funktion auf oder führen Sie einen Codeabschnitt aus.
Intervall löschen Brechen Sie die mit „setInterval“ festgelegte Wiederholungsaktion ab.
setTimeout Ruft eine Funktion auf oder führt einen Codeausschnitt nach einer angegebenen Verzögerung aus.
Zeitlimit löschen Die Methode kann das von der Methode setTimeout() festgelegte Timeout abbrechen.

Der Unterschied zwischen setTimeout() und setInterval() besteht darin, dass sie zu unterschiedlichen Zeiten ausgeführt werden.

Hinweis: setTimeout() wird nur einmal ausgeführt, während setInterval() regelmäßig in einem bestimmten Intervall ausgeführt wird.

Intervall festlegen

beschreiben

Mit setInterval() können Sie eine Funktion wiederholt aufrufen oder einen Codeabschnitt in einem festgelegten Zeitabstand ausführen. Die Periodeneinheit beträgt Millisekunden.

Wenn setInterval() nicht von clearInterval() geschlossen wird oder die Seite geschlossen wird, wird sie weiterhin aufgerufen.

Es gibt mehrere Parameter für setInterval.

Erstens: Wenn der erste Parameter ein Codesegment ist, ist die Methode setInterval() optional.

Zweitens, wenn der erste Parameter eine Funktion ist, kann die Methode setInterval() mehrere Parameter haben.

let timerId = setInterval(Funktion|Code, Verzögerung, arg1, arg2, …)

Parameter

Parameter Erforderlich/Optional beschreiben
Funktion | Code Erforderlich Funktion oder Codestring, der nach der aufgerufenen Funktion ausgeführt werden soll
Verzögerung Erforderlich Die Zeit, die bis zur Ausführung des Codes benötigt wird (in Millisekunden), kann leer gelassen werden, der Standardwert ist 0
arg1, arg2 … Optional Die Parameterliste, die an die ausgeführte Funktion (oder den Codestring) übergeben werden soll (wird von IE9 und darunter nicht unterstützt)

Mit dem Parameter func|code werden üblicherweise Funktionen übergeben. Aus historischen Gründen wird die Übergabe einer Codezeichenfolge unterstützt, jedoch nicht empfohlen.

Rückgabewert

Der Rückgabewert timeoutID ist eine positive Ganzzahl, die die Nummer des Timers angibt. Dieser Wert kann an clearTimeout() übergeben werden, um den Timer abzubrechen.

Verwendung

Dies ist ein Beispiel für das Klicken auf eine Schaltfläche und das Erhöhen einer Zahl jede Sekunde.

<p id="showNum"></p>
<button onclick="timer()">Klicken Sie hier, um die Zahl jede Sekunde um eins zu erhöhen</button>
 <Skript>
  const showNum = document.getElementById("showNum");
   let timerId; // Timer-ID
  sei num = 0;
   Funktion Timer() {
    TimerId = setzeInterval(addNum, 1000);
  }
   Funktion addNum() {
    showNum.innerText = `${num++}`;
  }
   // Es wurde kein Code zum Stoppen des Timers geschrieben</script>

setTimeout

beschreiben

setTimeout() gibt eine Ganzzahl zurück, die die Timernummer darstellt, die verwendet werden kann, um den Timer später abzubrechen.

setTimeout() können wir die Ausführung einer Funktion verschieben, bis ein bestimmtes Intervall verstrichen ist.

let timerId = setTimeout(Funktion|Code, Verzögerung, arg1, arg2, …)

Parameter

Die Parameter von setTimeout() sind die gleichen wie die von setInterval() .

Parameter Erforderlich/Optional beschreiben
Funktion | Code Erforderlich Funktion oder Codestring, der nach der aufgerufenen Funktion ausgeführt werden soll
Verzögerung Erforderlich Die Zeit, die bis zur Ausführung des Codes benötigt wird (in Millisekunden), kann leer gelassen werden, der Standardwert ist 0
arg1, arg2 … Optional Die Parameterliste, die an die ausgeführte Funktion (oder den Codestring) übergeben werden soll (wird von IE9 und darunter nicht unterstützt)

Mit dem Parameter func|code werden üblicherweise Funktionen übergeben. Aus historischen Gründen wird die Übergabe einer Codezeichenfolge unterstützt, jedoch nicht empfohlen.

Verwendung:

Die Verwendung von setTimeout() ist dieselbe wie bei setInterval() .
Im Gegensatz zu setTimeout() , das nur einmal ausgeführt wird, wird setInterval() jedoch periodisch entsprechend der angegebenen Zeit ausgeführt.

<p id="showNum"></p>
<button onclick="timer()">Nach dem Klicken eine Sekunde warten und die Zahl erhöht sich um eins</button>
 <Skript>
  const showNum = document.getElementById("showNum");
   lass TimerId;
  sei num = 0;
  addNum();
   Funktion Timer() {
    TimerId = setzeTimeout(addNum, 1000);
  }
   Funktion addNum() {
    showNum.innerText = `${num++}`;
  }
 </Skript>

Timer abbrechen

Die Methode clearInterval() bricht den durch setInterval() gesetzten Timer ab.

Die Methode clearTimeout() bricht den durch setTimeout() gesetzten Timer ab.

Die Verwendung ist sehr einfach und erfordert nur einen Parameter: TimeoutID, die Kennung des Timers, den Sie abbrechen möchten.
Diese ID wird vom entsprechenden Aufruf von setTimeout() bzw. clearTimeout() zurückgegeben.

clearInterval(Intervall-ID);
Zeitüberschreitung löschen (Zeitüberschreitungs-ID);

Beachten Sie, dass meout() und setInterval() denselben Nummernpool verwenden. Technisch gesehen sind clearTimeout() und clearInterval() austauschbar. Um Verwirrung zu vermeiden, sollten Sie die Abbruch-Timing-Funktionen jedoch nicht verwechseln.

Die Verwendung ist einfach

Funktion Timer() {
  TimerId = setzeTimeout(addNum, 1000);
}
 clearTimeout(timerId); // Wenn der Code bis zu dieser Zeile ausgeführt wird, wird der durch Timer gesetzte Timer abgebrochen.

Verwenden des Timers in der Konsole

Sie können Timer auch in der Browserkonsole verwenden

console.time(Timername)

Erstellen Sie einen Timer mit dem Namen „Name“ und starten Sie ihn.

Jeder Timer muss einen eindeutigen Namen haben und auf einer Seite können maximal 10.000 Timer gleichzeitig ausgeführt werden.

console.timeEnd(Timername)

Rufen Sie console.timeEnd(name) auf, um den Timer zu stoppen und die verstrichene Zeit in Millisekunden auszudrucken.

Konsole.Zeit(TimerName);
console.timeEnd(Timername);

Verwendung

Beispiel dafür, wie lange es dauert, bis eine For-Schleife 99999 Mal wiederholt wird.

Konsole.Zeit(Name);
 lass num;
für (let index = 0; index < 99999; index++) {
  Zahl++;
}
 Konsole.timeEnd(Name);

Zusammenfassen

Dieser Artikel endet hier. Ich hoffe, er kann Ihnen helfen. Ich hoffe auch, dass Sie mehr Inhalt auf 123WORDPRESS.COM lesen können!

Das könnte Sie auch interessieren:
  • Detaillierte Erklärung des JavaScript-Timer-Prinzips
  • Details zum JavaScript-Timer
  • JavaScript-Timer zur Realisierung einer zeitlich begrenzten Flash-Sale-Funktion
  • JavaScript-Timer zum nahtlosen Scrollen von Bildern
  • Zusammenfassung der JavaScript-Timertypen

<<:  Mehrere Methoden zum Implementieren von zwei festen Spalten und einer adaptiven Spalte in CSS

>>:  Mehrere Gründe, HTML nicht zu komprimieren

Artikel empfehlen

Beispiel für die Implementierung von Unterstreichungseffekten mit CSS und JS

In diesem Artikel werden hauptsächlich zwei Arten...

So benennen Sie in Linux mehrere Dateien gleichzeitig um

Vorwort In unserer täglichen Arbeit müssen wir hä...

Korrekte Änderungsschritte für das Standardnetzwerksegment von Docker

Hintergrund Ein Kollege arbeitet an seinem Sicher...

Praktische Methode zum Löschen einer Zeile in einer MySql-Tabelle

Zunächst müssen Sie bestimmen, welche Felder oder...

Das WeChat-Applet implementiert einen einfachen Chatroom

In diesem Artikel wird der spezifische Code des W...

Einfache Schritte zum Kapseln von Komponenten in Vue-Projekten

Inhaltsverzeichnis Vorwort So kapseln Sie eine To...

Bildschirmbefehl und Verwendung unter Linux

Bildschirmeinführung Screen ist eine vom GNU-Proj...

Beispiel zum Erstellen eines Datenbanknamens mit Sonderzeichen in MySQL

Vorwort In diesem Artikel wird erklärt, wie Sie i...

Allgemeines Startskriptbeispiel für ein Linux-Java-Programm

Allerdings ist die Häufigkeit des Shell-Starts se...