2016-12-14 11 views

答えて

12

今のところ、答えはで、です。あなたがインスペクタに表示さ

[[FunctionLocation]]プロパティは、機能に関する情報を収集するために別のC++の関数V8Debugger::functionLocation()を使用して、デバッガのC++コードにV8Debugger::internalProperties()に追加されます。 functionLocation()は、正確な情報を見つけるために、v8::Function::GetScriptLineNumber() and GetScriptColumnNumber()などのいくつかのV8固有のC++ APIを使用します。

上記のすべてのAPIは、JavaScriptコードではなく、C++コードでのみ使用できます。 Node.jsのようなプラットフォームでこのタスクを実行しようとするなら、ネイティブモジュールを書くことができるはずです。そうでなければ、あなたは運がありません。

0

console.logは、limited language supportでChromeに関数名を表示できます。

コールバックのデバッグやobserver patternの使用時に便利な関数名が見つかりました。これには命名関数が機能する必要があることに注意してください(無名の関数名は明らかに空白です)。

function myFn() {} 

if (typeof myFn === 'function') { 
    console.log('Name of function', myFn.name) 
} 

出力Name of function myFn

関連する問題