関数宣言のかっこと呼び出し
JavaScript では、関数宣言と呼び出しの区別は構文に現れます。関数宣言は中括弧で終わりますが、関数呼び出しは括弧で終わります。
次の例を考えてみましょう。
var myFunction = function() { setTimeout(myFunction, 1000); } myFunction();
ここで、setTimeout 関数は引数として関数参照を想定しています。 myFunction を記述するときは、関数自体を参照することになります。対照的に、myFunction() は実際に関数を呼び出します。
これは簡単そうに見えますが、例外があります。 setTimeout は、次のコードのように、関数を返す関数も受け入れることができます。
function myFunction() { return function() { alert("ohai"); } } // or const myFunction = () => () => alert("ohai");
このシナリオでは、setTimeout(myFunction(), 1000) は次のようになります。
これにより、効果的にアラートが毎秒表示されるようにスケジュールされます。
したがって、重要な違いは、括弧を省略すると関数オブジェクト自体を参照することです。かっこを含めると、関数が呼び出されます。これは、var myFunction = function() { ... } などの関数宣言、および const myFunction = () => などの関数式に適用されます。 { ... }.
以上がJavaScript 関数呼び出しで括弧が重要になるのはどのような場合ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。