2017-04-21 6 views
3

一部の関数は変数に設定されています。 そして、どのような種類の機能がそこに設定されているのかデバッグしたいのですか? しかし、その機能は変更できません。 この場合、どのようにデバッグする必要がありますか?[Function]型の変数をデバッグする方法は?

var something = returnfunc(); //returnfunc() return function type object 
console.log(something); 

[Function] 
+2

を実際の問題は何ですか?異なるタイプの関数はありません。すべての関数は単なる関数です。 –

+0

returnfunc()の代わりに、大括弧なしでreturnfuncを書くべきでしょう。 returnfuncは、期待している関数でなければなりません。 –

答えて

2

あなたは、ソースコードの文字列表現を取得するための関数でtoStringを呼び出すことができます;)

例:

let fn = (a, b) => a + b; 
console.log(fn.toString()) 
// (a, b) => a + b 
0

はたぶん、あなたは、関数の値を持つオブジェクトのチェックタイプを意味し:

var something = returnfunc; 
console.log(typeof something); 
0

が返す関数の識別方法を尋ねていると思います。匿名関数を使用する場合は、その関数が名前で識別されていないため、デバッグするのは難しいです:

function returnfunc() { 
    return function() { 
    return 'I am an anonymous function' 
    } 
} 

var fn = returnfunc() // [Function] 

しかし、あなただけの機能に名前を与えることができます。

function returnfunc() { 
    return function foo() { 
    return 'I am a named function' 
    } 
} 

var fn = returnfunc() // [Function: foo] 
関連する問題