大したことではない関数内で関数を呼び出そうとしていますが、何らかの理由でこのロジックから関数を呼び出せない理由がわかりません:高次関数呼び出しの動作が非常に混乱しています
function func1(futurefunc){
futurefunc();
}
function func2(){
return 3+3;
}
func(func2);
上記のコードの結果は未定義です。しかし、私が置く:func(alert)
、警告引数が呼び出されます。後者の場合は、実行されている理由を私は理解していないと最初の部分は、私は次のことをしようとすると、この場合にはしかし6
なり、戻り値を印刷していません。
function func1(futurefunc){
return futurefunc();
}
コードは思わこの場合、6である適切な値を提供する。明確な説明。私は何かを逃していないことを望む。
実際に使用している言語の場合は、javascriptタグを追加する必要があります。関数呼び出しの意味は言語によって異なります。 – Gene
'return'ステートメントがないのに、最初のケースで何も返されないのはなぜですか?なぜそれは混乱していますか? – Tomalak
@Tomalak括弧のために混乱していましたが、関数の引数が3 + 3の戻り値を返すので、関数の引数を呼び出す必要があると思っていました。私は基本を忘れていたと思われるかっこを追加して関数を呼び出すことについて学んでいました:) – Alonso