Heim >Web-Frontend >js-Tutorial >Wie kann ich „Array.forEach()' vorzeitig stoppen?

Wie kann ich „Array.forEach()' vorzeitig stoppen?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2025-01-03 09:56:39148Durchsuche

How Can I Stop `Array.forEach()` Early?

Aus Array.forEach ausbrechen

Die Array.forEach()-Methode ist ein leistungsstarkes Werkzeug zum Durchlaufen von Arrays, aber es fehlt ihr Fähigkeit, den Iterationsprozess vorzeitig zu stoppen. Dies kann ein Hindernis sein, wenn Sie den Vorgang aufgrund einer bestimmten Bedingung kurzschließen müssen.

Beachten Sie den folgenden Code:

[1, 2, 3].forEach(function(el) {
    if (el === 1) break;
});

Dieser Code versucht, die Iteration sofort zu stoppen Das Element mit dem Wert 1 wird gefunden. Die break-Anweisung hat jedoch keine Auswirkung innerhalb des forEach-Rückrufs.

Um das gewünschte Verhalten zu erreichen, müssen Sie eine Ausnahme auslösen, die die Ausführung der forEach-Schleife unterbricht. Hier ist ein Beispiel:

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 Code wird eine benutzerdefinierte Ausnahme namens BreakException erstellt. Wenn das Element mit dem Wert 2 angetroffen wird, wird die Ausnahme ausgelöst, wodurch die Schleife beendet wird. Der Catch-Block stellt sicher, dass die Schleifenausführung nur dann stoppt, wenn die BreakException ausgelöst wird, und verhindert so, dass andere Ausnahmen das Programm zum Absturz bringen.

Mit diesem Ansatz können Sie die Funktionalität einer Break-Anweisung innerhalb einer Array.forEach-Iteration simulieren , sodass Sie die Schleife beenden können, wenn bestimmte Bedingungen erfüllt sind.

Das obige ist der detaillierte Inhalt vonWie kann ich „Array.forEach()' vorzeitig 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