Beenden einer forEach-Schleife mit Exceptions in JavaScript
Die JavaScript-Programmiersprache enthält verschiedene Variationen der for
-Schleife. Im Gegensatz zu anderen Programmiersprachen sehen wir nur die traditionelle for
-Schleife, die aus drei Dingen besteht: Initialisierung, Bedingung und Inkrementieren oder Dekrementieren. Wir müssen diesen 3 Elementen folgen, damit eine traditionelle for
-Schleife funktioniert. Es kann ziemlich verwirrend erscheinen, besonders wenn Sie neu in der Programmierung sind.
JavaScript hat uns eine neue Art des Schreibens der for
-Schleife bereitgestellt, und das ist die forEach
-Schleife. Die forEach
-Schleife wird verwendet, um über ein Array zu iterieren. Viele Entwickler bevorzugen die Verwendung der forEach
-Schleife gegenüber der herkömmlichen for
-Schleife, um über ein Array zu iterieren, da es viel einfacher zu schreiben und viel besser lesbar ist.
Jede Schleife, entweder eine for
-Schleife oder eine while
-Schleife, kann mit Hilfe einer break
-Anweisung beendet werden. Der einzige Nachteil bei der Verwendung der forEach
-Schleife zum Durchlaufen eines Arrays besteht darin, dass sie nicht mit dem Schlüsselwort break
beendet werden kann. Es gibt Zeiten, in denen wir eine forEach
-Schleife beenden möchten, wenn während der Ausführung des Programms eine bestimmte Bedingung (entweder wahr oder falsch) gilt. Daher können wir die Ausnahmebehandlung verwenden.
Beenden einer forEach
-Schleife mit dem try...catch
-Block in JavaScript
Um die Funktionalität der Anweisung break
in der Schleife array.forEach
zu erreichen, können wir das in JavaScript verfügbare Konzept der Ausnahmebehandlung verwenden. Die Ausnahmebehandlung ist nichts anderes als die Behandlung abnormaler Bedingungen, wenn beim Ausführen eines Programms ein Fehler auftritt und unnötige Programmabstürze vermieden werden. Dies geschieht mit Hilfe eines Blocks try...catch
.
Im Block try
schreiben Sie den gesamten Code. Und der Block catch
enthält den Code, der zur Behandlung der Ausnahme verwendet wird.
<!DOCTYPE html>
<html lang="en">
<head>
<title>Document</title>
</head>
<body>
<p id="errorMsg"></p>
<script>
var arr = [1, 2, 3, 4, 5]
try {
arr.forEach((element)=> {
if (element === 4) throw "number is equal to four";
console.log(element);
});
}
catch (e) {
errorMsg = document.getElementById('errorMsg');
errorMsg.innerHTML = "Error: " + e + ".";
}
</script>
</body>
</html>
Ausgabe:
// The below output will be printed on the screen.
Error: number is equal to four.
// The below output will be printed inside the web browser console
1
2
3
Dies ist unser HTML 5-Dokument. Innerhalb des Tags <body>
. Wir haben ein Absatz-Tag, dessen id
errorMsg
ist. Dieses Absatz-Tag wird verwendet, um die Fehlermeldung anzuzeigen, die von unserem JavaScript-Programm ausgelöst wird.
Innerhalb des Tags <script>
haben wir unser aktuelles Programm. Hier haben wir zuerst ein Array namens arr
deklariert, das Elemente von 1 bis 5 enthält. Das Hauptziel hier ist es, dieses Array mit der Schleife forEach
zu durchlaufen und die Schleife dann zu unterbrechen, wenn sie das Element 4
erreicht Innerhalb des Arrays arr
.
Im Block try
verwenden wir eine forEach
-Schleife, um über dieses Array zu iterieren. Innerhalb dieser Schleife haben wir eine anonyme Funktion (auch als Pfeilfunktion bekannt) übergeben. Innerhalb dieser Funktion haben wir eine if
-Anweisung, um zu überprüfen, ob das Element an einer bestimmten Position in einem Array 4
ist oder nicht. Wenn es nicht 4
ist, wird dieses Element in der Konsole des Webbrowsers gedruckt. Andernfalls wird eine Ausnahme ausgelöst, die besagt, dass die number is equal to four
ist.
Diese vom Block try
ausgelöste Ausnahme wird vom Block catch
abgefangen und in der Variablen e
gespeichert. Jetzt können wir die Fehlermeldung, die in der Variablen e
im Tag p
vorhanden ist, mithilfe einer HTML-Eigenschaft namens innerHTML
anzeigen. Dies ist ein vollständiger Prozess zum Implementieren einer break
-Funktionalität in der forEach
-Schleife, während ein Array in JavaScript durchlaufen wird.
Sahil is a full-stack developer who loves to build software. He likes to share his knowledge by writing technical articles and helping clients by working with them as freelance software engineer and technical writer on Upwork.
LinkedIn