2017-09-28 7 views
0

私は比較的新しいjavascriptです。今のところ、私は組み込み関数の周りに頭を抱えようとしていますが、構文が奇妙に見えます(私はJavaの知識に頼って間違って解決しようとしていますが)。このjavascript関数はどこからデータを取得しますか?

私はこれまで、1つのハングアップを持っています。世界で復帰機能に関連するデータから来ないところ私の質問は、ある

function test(){ 
      return function(d, i) { 
       ... 
      }; 
    } 

:私はこれに非常に類似した機能を持って取り組んでコードを探していますか?私は、組み込み関数のデータはカプセル化親から渡すことができますが、親関数には実際に渡すデータがないように見えます。注意点としては

は、私は他の「すでにあなたの答えを持っているかもしれ質問」のすべてを見て、私の問題に関連する何かを見つけることができませんでした。私は近くにあったが、その頭に釘を打つものは何も見なかった。それらの多くは、独自のパラメータを持つ親/包含機能を持っていました。

+0

[高階関数(https://en.m.wikipedia.org/wiki/Higher-order_function) – ASDFGerte

+0

'関数(D、I){}' 'のいずれかのDで何も_do_ありません''ではない。単に「このデータを取得したときに_するためのマーカーを作成します_」と言います。 '(the_d、the_I)'で関数が呼び出されるまで、内部の 'function(...){...}'内部のコードは実行されません。 – daboross

+0

コメントありがとうございました!この関数は物事の大まかなスキームにかなり入れ子になっていますので、データの出所から正確に特定することは困難ですが、ゆっくりと掘り下げて整理しています!あなたのコメントは間違いなく私に正しい道を導きました! –

答えて

1

あなたの機能test()は実行していない、機能を返しています。したがって、パラメータはreturn関数を呼び出す人が提供します。

function test() { 
    return function(d, i) { 
     ... 
    }; 
}  

var innerFunc = test(); 

var result = innerFunc(1, 2); // or call or apply 
+0

ああ、ありがとう!あなたが正しいです、私が見ているコードは、呼び出しとコールバックのカスケードを持っているので、データがどこから由来しているのかを正確に特定することは困難です。 –

関連する問題