ホームページ > ウェブフロントエンド > jsチュートリアル > JavaScript の「setTimeout」関数が即座に実行されるのはなぜですか?

JavaScript の「setTimeout」関数が即座に実行されるのはなぜですか?

Barbara Streisand
リリース: 2024-12-23 08:56:10
オリジナル
528 人が閲覧しました

Why Does My JavaScript `setTimeout` Function Execute Instantly?

JavaScript での setTimeout の動作を理解する

setTimeout 関数を使用して時間遅延を実装しようとする場合、関数がなぜその関数を使用するのかを把握することが重要です。意図した処理を待つ代わりに即座に実行される場合があります。

問題:

コード内で、誤って関数 testfunction() をすぐに呼び出し、その後、その戻り値をスケジュールのために setTimeout に渡しています。これにより、関数が即時に実行されます。

解決策:

正しい構文には、関数呼び出しから括弧を削除する必要があります:

setTimeout(testFunction, 2000);
ログイン後にコピー
ログイン後にコピー

括弧を省略すると、関数をすぐに実行してその関数を提供するのではなく、関数自体への参照を setTimeout に渡します。戻り値。これにより、関数の実行が指定された遅延でスケジュールされるようになります。

したがって、testFunction を 2 秒の遅延で実行するには、次の構文を使用します。

setTimeout(testFunction, 2000);
ログイン後にコピー
ログイン後にコピー

以上がJavaScript の「setTimeout」関数が即座に実行されるのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート