Get to know MDN better
Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten. Erfahre mehr über dieses Experiment.
Diese Funktion ist gut etabliert und funktioniert auf vielen Geräten und in vielen Browserversionen. Sie ist seit September 2016 browserübergreifend verfügbar.
Die throw()-Methode von Generator-Instanzen wirkt so, als ob eine throw-Anweisung an der aktuellen angehaltenen Position im Körper des Generators eingefügt wird. Dies informiert den Generator über einen Fehlerzustand und ermöglicht es ihm, den Fehler zu behandeln, Bereinigungen durchzuführen oder sich selbst zu schließen.
Die zu werfende Ausnahme. Für Debugging-Zwecke ist es nützlich, sie zu einem instanceof Error zu machen.
Wenn die geworfene Ausnahme von einem try...catch abgefangen wird und der Generator fortfährt, weitere Werte zu liefern, wird ein Object mit zwei Eigenschaften zurückgegeben:
doneEin boolescher Wert:
Der aus dem nächsten yield-Ausdruck gelieferte Wert.
Wird geworfen, wenn der Generator bereits läuft.
Wenn die exception nicht innerhalb der Generatorfunktion von einem try...catch abgefangen wird, wird sie auch an den Aufrufer von throw() geworfen.
Die throw()-Methode kann, wenn sie aufgerufen wird, als ob eine throw exception;-Anweisung an der aktuellen angehaltenen Position im Körper des Generators eingefügt wird, betrachtet werden, wobei exception die an die throw()-Methode übergebene Ausnahme ist. Daher wird der Generator bei einem typischen Ablauf durch das Aufrufen von throw(exception) werfen. Wenn der yield-Ausdruck jedoch in einem try...catch-Block eingeschlossen ist, kann der Fehler abgefangen und der Kontrollfluss entweder nach der Fehlerbehandlung fortgesetzt oder geordnet beendet werden.
Das folgende Beispiel zeigt einen Generator und einen Fehler, der mit der throw-Methode geworfen wird. Ein Fehler kann wie üblich von einem try...catch-Block abgefangen werden.
| ECMAScript® 2027 Language Specification # sec-generator.prototype.throw |
JavaScript aktivieren, um diese Browser-Kompatibilitätstabelle anzuzeigen.
Der Bauplan für ein besseres Internet.
Besuche die gemeinnützige Muttergesellschaft der Mozilla Corporation, die Mozilla Foundation.
Teile dieses Inhalts sind ©1998–2026 von einzelnen mozilla.org-Mitwirkenden. Inhalte sind verfügbar unter einer Creative-Commons-Lizenz.