Window: reportError()-Methode
Die reportError()-Methode der Window-Schnittstelle kann verwendet werden, um Fehler an die Konsole oder Ereignishandler globaler Bereiche zu melden und emuliert so eine nicht abgefangene JavaScript-Ausnahme.
Dieses Feature ist in erster Linie für benutzerdefinierte Event-Dispatching- oder Callback-Manipulationsbibliotheken gedacht. Bibliotheken können diese Funktion nutzen, um Fehler im Callback-Code abzufangen und sie an den obersten Handler weiterzuleiten. Dies stellt sicher, dass eine Ausnahme in einem Callback nicht verhindert, dass andere behandelt werden, während gleichzeitig sichergestellt wird, dass Stack-Trace-Informationen für das Debugging auf oberster Ebene leicht zugänglich sind.
Syntax
reportError(throwable)
Parameter
Rückgabewert
Keiner (undefined).
Ausnahmen
TypeError-
Die Methode wird ohne ein Fehlerargument aufgerufen.
Beispiele
Funktionsprüfung für die Methode mit:
if (typeof window.reportError === "function") {
// function is defined
}
Der folgende Code zeigt, wie Sie einen Fehler erstellen und melden können und wie er entweder mit der onerror-Ereignishandlereigenschaft oder durch Hinzufügen eines Listeners für das error-Ereignis abgefangen werden kann.
Beachten Sie, dass der Handler, der onerror zugewiesen ist, true zurückgeben muss, um zu verhindern, dass das Ereignis weiter verbreitet wird.
const newError = new Error("Some error message", "someFile.js", 11);
window.reportError(newError);
window.onerror = (message, source, lineno, colno, error) => {
console.error(`message: ${error.message}, lineno: ${lineno}`);
return true;
};
window.addEventListener("error", (error) => {
console.error(error.filename);
});
// Output
// > "message:Some error message, lineno: 11"
// > "someFile.js"
Spezifikationen
| Specification |
|---|
| HTML> # runtime-script-errors> |
Browser-Kompatibilität
Loading…
Siehe auch
WindowWorkerGlobalScope.reportError()Window:errorEreignisWorkerGlobalScope:errorEreignisHTMLElement:errorEreignis