[Edge]。→、
注: この機能は で利用できます
Window で指定のエラーをエミュレートします。
mdn: コンソールまたはグローバル イベント ハンドラーにエラーを報告できます。キャッチされていない JavaScript 例外をエミュレートします。
この機能は主に、カスタム イベント ディスパッチまたはコールバック操作ライブラリを対象としています。ライブラリはこの機能を使用して、コールバック コードのエラーをキャッチし、トップ レベルのハンドラーに再スローすることができます。これにより、1 つのコールバックで例外が発生しても、他のコールバックの処理が妨げられることはありません。同時に、トップレベルでのデバッグにスタック トレース情報をすぐに利用できるようにします。
Window | Window オブジェクト。 |
---|---|
throwable | TypeError などのエラー オブジェクト。 |
なし(undefined)。
以下を使用したメソッドの機能テスト:
if (typeof self.reportError === 'function') { // function is defined }
次のコードは、エラーを作成して報告する方法を示しています。また、グローバルな onerror ハンドラを使用するか、エラー イベントのリスナーを追加することによって、どのようにキャッチされるかを示します。イベントの伝播を停止するには、onerror に割り当てられたハンドラが true を返す必要があることに注意してください。
const newError = new Error('Some error message', "someFile.js", 11); self.reportError(newError); window.onerror = (message, source, lineno, colno, error) => { console.error(`message: ${error.message}, lineno: ${lineno}` ); return true; }; self.addEventListener('error', (error) => { console.error(error.filename); }); // Output // > "message:Some error message, lineno: 11" // > "someFile.js"
window.onerror=(message, source, lineno) => { //onerror イベントハンドラーの設定: alert(message +":"+ source +":"+ lineno); }; E=new Error('エラーテスト', "あああ", 11); //エラーオブジェクト作成。 window.reportError(E); //エラーをエミュレート。
表示結果は、
Script error.::0
指定したエラー内容が出ていないようだが。
return true; が必要なのか不明。
window.addEventListener('error', (err) => { //errorイベント割り当て: alert(err.message +":"+ err.fileName +":"+ err.lineNumber); }); E=new Error('エラーテスト', "あああ", 11); //エラーオブジェクト:message、fileName、lineNumber を指定。 window.reportError(E); //エラーをエミュレート。
表示結果:
Script error.:undefined:undefined
指定したエラー内容が出ていないようだが。