2016-08-18 15 views
0
f2=function(fn){ 
    return fn 
}; 

f1 = f2(function(a,b){ 
    console.log('' + a+ b) 
    }); 

f1(3,4); 

出力は34パラメータは関数パラメータに渡されますか?パラメータ(3及び4)F3に渡されなぜ

ですか?

+0

F3手段であります){console.log( '' + a + b)} どのjs機能ですか? – Charles

+1

* "どのjs機能ですか?" *関数はオブジェクトです。 (あるいは、「ファンクションはファースト・クラスの市民」、「JSはファースト・クラスのファンクション」、またはそのフレーズの他のバリエーションが聞こえるかもしれません。)関数への参照を渡すことができます。だから 'f2()'は単にそれに渡された無名関数をとり、すぐにそれを返します。だから 'f1'はその無名関数を指します。 – nnnnnn

答えて

1

なぜパラメータ(3と4)がf3に渡されるのですか?

関数はf1

f2(function(a,b){ 
    console.log('' + a+ b) 
}); 

から返さは、3()を呼び出しf1(3,4);パラメータとして渡さ4a3ある場合、bは 関数(A、Bへ4

+0

私はそれを得た。 @nnnnnnが述べたように、 'f1'は無名関数を指します。ありがとう。 – Charles

関連する問題