ホームページ >ウェブフロントエンド >jsチュートリアル >初回実行時に遅延なく setInterval 関数を実行するにはどうすればよいですか?

初回実行時に遅延なく setInterval 関数を実行するにはどうすればよいですか?

DDD
DDDオリジナル
2024-11-09 09:23:02468ブラウズ

How to Execute setInterval Function Without Delay on the First Run?

初回実行時に遅延なく setInterval 関数を実行する

JavaScript では、setInterval メソッドは、指定された間隔の後に繰り返し実行される関数をスケジュールします。ただし、デフォルトでは、関数の最初の実行までに遅延があります。

この遅延を克服し、最初の呼び出しで関数をすぐに実行するには、次のいずれかの方法を使用できます:

メソッド 1: 関数の直接呼び出し

このアプローチには、setInterval を呼び出す前に関数を手動で呼び出すことが含まれます。

foo();
setInterval(foo, delay);

メソッド 2: セルフトリガー関数setTimeout

の使用 この手法では、setInterval の使用を回避し、代わりに setTimeout 関数に依存して後続の実行をトリガーします。

function foo() {
    // Do stuff...

    // Schedule next execution
    setTimeout(foo, delay);
}

// Start the loop
foo();

setTimeout により、関数呼び出し間の最小間隔が保証され、潜在的な問題が排除されます。

方法 3: 即時に呼び出される関数式 (IIFE)

プロセスを簡素化するために、IIFE を使用して

(function foo() {
    ...
    setTimeout(foo, delay);
})();

このアプローチには、関数の定義とループの開始を同時に行うという利点があります。

以上が初回実行時に遅延なく setInterval 関数を実行するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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