Effektive JavaScript-Fehlerbehandlung mit globalem Ereignismechanismus
Um undefinierte Funktionsfehler global zu behandeln, erfasst die Nutzung des globalen Ereignismechanismus von JavaScript effektiv alle nicht erfassten Fehler Ausnahmen.
window.onerror-Ereignisbehandlung
Implementieren Sie einen Ereignishandler für das window.onerror-Ereignis wie folgt:
<code class="javascript">window.onerror = function(msg, url, line, col, error) {
// Message, URL, line and column details
// Note that col & error are new to HTML 5 and may vary across browsers.
// Customize the error display or perform error reporting using AJAX, for instance:
var xhr = new XMLHttpRequest();
xhr.open('POST', '/ajax/log_javascript_error');
xhr.send(JSON.stringify({ msg, url, line, col, error }));
};</code>
< ;h2>Wann wird window.onerror ausgelöst?
Dieses Ereignis wird ausgelöst, wenn:
-
Nicht abgefangene Ausnahmen: Nachrichten auslösen, undefinierte Funktionen aufrufen oder kreuzende Ursprungs-Iframe-Inhaltsfenster-/Dokumentfehler.
-
Kompilierungsfehler: Syntaxfehler, wie z. B. nicht übereinstimmende Klammern, fehlende Semikolons oder der Versuch, Nicht-Skript-Argumente zu kompilieren.
Browser-Unterstützung
- Chrome 13
- Firefox 6.0
- Internet Explorer 5.5
- Opera 11,60
- Safari 5.1
Zusätzliche Ressourcen
- Mozilla Developer Network: [window.onerror](https:/ /developer.mozilla.org/en-US/docs/Web/API/GlobalEventHandlers/onerror)
- MSDN: [Handhabung und Vermeidung von Webseitenfehlern Teil 2: Laufzeitfehler](https://docs .microsoft.com/en-us/ previous-versions/ms536764(v=vs.85))
- [Zurück zu den Grundlagen – JavaScript onerror Event](https://www.webdesignerdepot.com/2014/ 10/back-to-basics-javascript-onerror-event/)
- [DEV.OPERA: Bessere Fehlerbehandlung mit window.onerror](https://dev.opera.com/articles/better-error -handling-with-window-onerror/)
- [Window onError Event](https://www.html5rocks.com/en/tutorials/developertools/onerror/)
- [Verwenden des onerror-Ereignis zur Unterdrückung von JavaScript-Fehlern](https://stackoverflow.com/a/11712511)
- [SO: window.onerror wird in Firefox nicht ausgelöst](https://stackoverflow.com/q/5472601/ 123152)
Das obige ist der detaillierte Inhalt vonWie kann ich JavaScript-Fehler global mithilfe des Ereignisses „window.onerror' effektiv behandeln?. 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