関数呼び出しで括弧を使用する場合
提供されたコード スニペット内:
var myFunction = function() { setTimeout(myFunction, 1000); } myFunction();
内の関数呼び出しsetTimeout は引数として関数参照を想定しているため、setTimeout には括弧は必要ありません。 myFunction は関数を参照します。
対照的に、最後の行の myFunction() は関数を呼び出します。 myFunction で括弧を使用すると、関数が呼び出され、そのコードが実行されます。
ルールの例外
特定の状況下では、setTimeout(myFunction(), 1000)意味があるかもしれません。たとえば、myFunction() が関数自体を返す場合:
function myFunction() { return function() { alert("ohai") } }
この場合、setTimeout(myFunction(), 1000) は次の処理を行います:
その結果、アラートが毎秒トリガーされます。
以上がJavaScript の「setTimeout」関数呼び出しで括弧を使用する必要があるのはどのような場合ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。