Heim  >  Artikel  >  Web-Frontend  >  Wie kann ich mit dem Mechanismus „window.onerror“ alle JavaScript-Fehler, einschließlich undefinierter Funktionsaufrufe, die von Flash ausgelöst werden, global abfangen?

Wie kann ich mit dem Mechanismus „window.onerror“ alle JavaScript-Fehler, einschließlich undefinierter Funktionsaufrufe, die von Flash ausgelöst werden, global abfangen?

Susan Sarandon
Susan SarandonOriginal
2024-10-27 06:30:29958Durchsuche

How can I globally catch all JavaScript errors, including undefined function calls triggered by Flash, using the `window.onerror` mechanism?

Globaler Fehlermechanismus von JavaScript

Problem: Gibt es eine globale Möglichkeit, jeden JavaScript-Fehler abzufangen, einschließlich undefinierter Funktionsaufrufe, die durch Flash ausgelöst werden?

Lösung mit window.onerror

JavaScript bietet einen globalen Ereignishandler, window.onerror, der Fehler erfasst, die entweder während der Laufzeit (nicht abgefangene Ausnahmen) oder bei der Kompilierung (Fehler bei der Kompilierung) ausgelöst werden.

<code class="javascript">window.onerror = function(msg, url, line, col, error) {
  // Process and display error information
}</code>

Durch Festlegen des window.onerror-Ereignishandlers wie oben gezeigt wird jeder im JavaScript-Code auftretende Fehler abgefangen und verarbeitet.

Von window.onerror behandelte Fehlertypen

window. onerror behandelt sowohl nicht abgefangene Ausnahmen als auch Fehler bei der Kompilierung. Zu den nicht abgefangenen Ausnahmen gehören Fehler wie:

  • wirf „einige Nachrichten“
  • Aufruf undefinierter Funktionen wie call_something_undefined()

Kompilierungszeitfehler andererseits Fügen Sie andererseits Fehler ein wie:

  • Unterminierte Skript-Tags (<script>{</script>)
  • Syntaxfehler (