JavaScriptで例外をキャッチ/処理する場合、例外が発生したときのコールスタックを確認するにはどうすればよいですか? (そして可能であれば行番号も)
try
{
// etc...
}
catch (ex)
{
// At this point here I want to be able to print out a detailed exception
// message, complete with call stack, and if possible line numbers.
}
this を見てください。
利用可能な情報を分析する方法:
try
{
doInit();
} catch(err)
{
var vDebug = "";
for (var prop in err)
{
vDebug += "property: "+ prop+ " value: ["+ err[prop]+ "]\n";
}
vDebug += "toString(): " + " value: [" + err.toString() + "]";
status.rawValue = vDebug;
}
IEで実行されているJavaScriptでは、例外がキャッチされた時点でスタックトレースをキャプチャできないことを発見しました。 this PDFによると、IEでスタックトレースを取得する唯一の方法は、例外を処理しない場合です。