投稿者 tel | 2014年12月23日

Chromeでコールスタックの深さを取得する

BracketsのShellAPI.execCommandのソースでコールスタックの深さ(どんだけネストして呼び出されたか)を取得しているコードがあったのでメモ。

var stackDepth = (new Error()).stack.split('\n').length;

エラーオブジェクトから分かるスタックトレースの行数で判定しているみたい。

他のブラウザだとスタックトレースの表示が違うのでそのままでは使えなさそう。

ShellAPI.execCommandのなかで呼び出しがトップレベルかどうかの判定に使われていた。判定を回避するために setTimeout とか bind 使ったけどやっぱりコピー、カット、ペーストのコマンドは動かなかった。


コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト / 変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト / 変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト / 変更 )

Google+ フォト

Google+ アカウントを使ってコメントしています。 ログアウト / 変更 )

%s と連携中

カテゴリー

%d人のブロガーが「いいね」をつけました。