Heim >Web-Frontend >js-Tutorial >Wie kann ich eine „forEach'-Schleife in JavaScript frühzeitig stoppen?

Wie kann ich eine „forEach'-Schleife in JavaScript frühzeitig stoppen?

DDD
DDDOriginal
2024-12-26 09:53:10206Durchsuche

How Can I Stop a `forEach` Loop Early in JavaScript?

So schließen Sie die Array.forEach-Iteration mithilfe von Ausnahmen kurz

Die Methode Array.forEach() ermöglicht die Iteration über die Elemente eines Arrays , Bereitstellung einer Rückruffunktion für jedes Element. Es fehlt jedoch die Möglichkeit, die Iteration mit Methoden wie break abrupt zu stoppen.

Um diese Einschränkung zu überwinden, können Sie Ausnahmen nutzen, um die Ausführung von forEach() zu unterbrechen. Indem Sie eine benutzerdefinierte Ausnahme auslösen, können Sie signalisieren, dass die Iteration beendet werden soll.

Betrachten Sie den folgenden Code:

var BreakException = {};

try {
  [1, 2, 3].forEach(function(el) {
    console.log(el);
    if (el === 2) throw BreakException;
  });
} catch (e) {
  if (e !== BreakException) throw e;
}

In diesem Beispiel definieren wir eine benutzerdefinierte Ausnahme mit dem Namen BreakException. Innerhalb des forEach()-Rückrufs suchen wir nach dem Element mit dem Wert 2. Wenn es gefunden wird, löst es die BreakException aus und beendet die Iteration sofort.

Der try...catch-Block fängt alle innerhalb von forEach ausgelösten Ausnahmen ab () Rückruf. Wenn die Ausnahme keine Instanz von BreakException ist, wird sie erneut ausgelöst, um die normale Fehlerbehandlung aufrechtzuerhalten.

Mit dieser Technik können Sie die Array.forEach()-Iteration effektiv kurzschließen, indem Sie die Ausführung bei einer bestimmten Bedingung anhalten.

Das obige ist der detaillierte Inhalt vonWie kann ich eine „forEach'-Schleife in JavaScript frühzeitig stoppen?. 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