ホームページ >ウェブフロントエンド >jsチュートリアル >定期的に JavaScript 関数を再帰的に実行するにはどうすればよいですか?

定期的に JavaScript 関数を再帰的に実行するにはどうすればよいですか?

Patricia Arquette
Patricia Arquetteオリジナル
2024-12-05 08:56:101011ブラウズ

How Can I Recursively Execute a JavaScript Function at Regular Intervals?

指定した時間間隔で関数を再帰的に実行する

JavaScript では、setTimeout() 関数を使用して、事前定義された時間に関数呼び出しをスケジュールできます。これは、特定の遅延の後にアクションを実行する必要がある場合に便利です。しかし、関数を一定の間隔で繰り返し実行したい場合はどうすればよいでしょうか?

1 つの方法は、setInterval() 関数を使用することです。

setInterval(function, delay)

この関数は、指定されたコールバック関数を継続的に呼び出します。指定された時間間隔。ただし、関数の実行時間が間隔を超える場合、このメソッドでは問題が発生する可能性があります。

より信頼性の高いアプローチは、setTimeout() を自己実行匿名関数と組み合わせて使用​​することです:

(function(){
    // Your code goes here
    setTimeout(arguments.callee, 60000);
})();

この関数は、指定された間隔の後に同じ関数への次の呼び出しをスケジュールします。また、現在の関数の実行が完了するまで後続の呼び出しが行われないようにします。 argument.callee 参照は関数を再度呼び出すために使用されますが、Ecmascript 5 では非推奨になりました。より良い代替方法は、名前付き関数を使用し、setTimeout 呼び出しでそれを参照することです。

以上が定期的に JavaScript 関数を再帰的に実行するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。