31

window.onerror の処理を​​デバッグしようとしています。エラーをスローする関数を作成しました (存在しない別の関数を呼び出します)。Chrome の Web 開発コンソールからこの最初の関数を呼び出してみました。コンソールにエラーが報告されていますが、window.error 処理関数が呼び出されていないようです。(window.onerror がコンソールのエラー処理コードを参照していることを確認しました)。

開発コンソールで呼び出された関数内のエラーは、window.onerror をトリガーしませんか?

4

1 に答える 1

50

彼らはそうではありません(私がテストしたChromeでは)、テストする簡単な方法は

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

先延ばしにすればやらせることはできますが、

window.setTimeout(function() {throw new Error()}, 0);
// error!
// Uncaught Error
于 2013-07-08T19:03:54.313 に答える