ホームページ >ウェブフロントエンド >jsチュートリアル >カスタム例外の JavaScript スタック トレースを取得するにはどうすればよいですか?

カスタム例外の JavaScript スタック トレースを取得するにはどうすればよいですか?

DDD
DDDオリジナル
2024-10-17 22:30:031051ブラウズ

How Can JavaScript Stack Traces Be Obtained for Custom Exceptions?

カスタム例外の JavaScript スタック トレースを取得する方法

カスタム JavaScript 例外をスローするとき (例: "AArrggg" をスローする)、スタック トレース (Firebug またはその他のツール経由) では、例外メッセージのみが明らかになる場合があります。この記事では、カスタム例外も含めて完全なスタック トレースを取得するためのソリューションを紹介します。

最新のブラウザ ソリューション:

最新のブラウザでは、コンソールを使用してスタック トレースに簡単にアクセスできます。 .trace().

Error Stack プロパティ:

よりクリーンで単純な解決策として、Error オブジェクトの stack プロパティを利用できます:

<code class="js">function stackTrace() {
    var err = new Error();
    return err.stack;
}</code>

このアプローチでは、呼び出し関数、ファイル パス、行番号を含む詳細なスタック トレースが提供されます。

カスタム スタック トレース関数:

よりカスタマイズされたものスタック トレース機能を使用するには、次のスクリプトの使用を検討してください:

<code class="js">function stacktrace() { 
  function st2(f) {
    return !f ? [] : 
        st2(f.caller).concat([f.toString().split('(')[0].substring(9) + '(' + f.arguments.join(',') + ')']);
  }
  return st2(arguments.callee.caller);
}</code>

以上がカスタム例外の JavaScript スタック トレースを取得するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。