は、以下のJavaScript関数を考えてみましょう。直接triggerError();
を実行している場合すべてのJavaScriptエラーがChromeデベロッパーツールコンソールに書き込まれるようにするにはどうすればよいですか?
function triggerError() {
var something = undefined;
// The next line will trigger 'TypeError: Cannot call ... of undefined'
something.doesNotExist();
}
次のエラーが予想され、赤でクロム開発者ツールコンソールに書き込まれます。
TypeError: Cannot call method 'doesNotExist' of undefined
しかし、triggerError();
がされているときイベントリスナーから実行するとエラーはコンソールに書き込まれません(関数呼び出しは暗黙的にsomething.doesNotExist();
で終了します)。これは、タイプミスなどの場合にデバッグするのが非常に面倒です。
イベントリスナー/コールバックから実行されているコードで生成されたエラーを含め、すべてのエラーがChromeデベロッパーツールコンソールに書き込まれていることを確認するにはどうすればよいですか?
明白な回避策は、場所全体にtry { ... } catch (x) { console.log(x) };
を追加することですが、私は誤植を追加する場所を事前に知っていないので、これは方法ではありません。あなたはtry catch
使用することができ
ですねChromeのバグのように。 http://new.crbug.comで報告する必要があります – abraham
Chromeでエラーメッセージが表示されます** **ライブデモ:** http://jsfiddle.net/zzcYH/1/ –