2013-07-08 6 views
15

Ich versuche, unsere Behandlung von window.onerror zu debuggen. Ich habe eine Funktion erstellt, die einen Fehler auslöst (indem sie eine andere Funktion aufruft, die nicht existiert). Ich habe versucht, diese erste Funktion von der Webentwicklungskonsole von Chrome aus aufzurufen - ein Fehler wird in der Konsole gemeldet, aber die Funktion window.error handling scheint nicht aufgerufen zu werden. (Ich habe überprüft, dass window.onerror auf unseren Fehlerbehandlungscode in der Konsole verweist).Chrome: Wird ein Fehler in Code, der von der Entwicklungskonsole aufgerufen wird, window.onerror auslösen?

Führen Fehler in Funktionen, die in der Entwicklungskonsole aufgerufen werden, nicht zur Auslösung von window.onerror?

+0

Duplikate: http : //stackoverflow.com/questions/16192464/window-onerror-not-working-in-chrome, http://stackoverflow.com/questions/2384666/global-japascript-exception-handler-in-chrome – c69

+2

@ c69 nicht sicher, wenn diese Duplikate sind, weil _1._ 'window.onerror' jetzt in _Chrome_ ist. _2._ 'window.onerror' wird an anderer Stelle im Code ausgelöst. _3._ diese Fragen sprechen nicht von 'Konsole'. –

Antwort

25

Sie dies nicht tun (in Chrome, wo ich getestet), einfache Art und Weise zu testen ist

window.onerror = function() {console.log('error!');}; 
throw new Error(); 
// Error 

Sie können sie machen es tun, wenn Sie sie verschieben, obwohl

window.setTimeout(function() {throw new Error()}, 0); 
// error! 
// Uncaught Error 
+1

Oh das ist interessant. Danke für die Klärung und Abhilfe! – UpTheCreek

+1

@RobW Interessant und kann an anderer Stelle +1 angewendet werden, aber dann wird die Frage "Was ist der Ursprung der" Konsole "?" Das kann keine einfache Antwort sein, wenn das, was du sagst, wahr ist, sonst würde _XHR_ von der Konsole aus nicht funktionieren. Ich denke, es ist wahrscheinlicher, dass die "Konsole" in ihrem eigenen "Versuch..Catch" verpackt ist. –

+1

@RobW - Ich dachte, dass externe Skripte immer noch window.onerror aufgerufen, aber dass das Fehlerobjekt alle nützlichen Informationen entfernt wurde? Z.B. Das Problem in dieser Frage beschrieben: http://stackoverflow.com/questions/5913978/cryptic-script-error-reported-in-javascript-in-chrome-and-firefox – UpTheCreek

Verwandte Themen