ホームページ >ウェブフロントエンド >jsチュートリアル >`setTimeout(GetUsersNumber(), 5000)` が 5 秒後ではなくすぐに実行されるのはなぜですか?
setTimeout での関数呼び出しと関数オブジェクト
サーバーの過負荷を避けるために、Web 開発者は次を使用して 5 秒ごとにページ値を更新する予定です。 setTimeout()。ただし、コード内の関数は遅延するのではなく、すぐにトリガーされるようです。
提供されたコード内:
<pre class="brush:php;toolbar:false"> setTimeout(GetUsersNumber(), 50000);
エラーは、関数呼び出しと関数オブジェクトの区別にあります。 JavaScript。この場合、関数名の後に括弧が含まれており、関数呼び出しを示します。 setTimeout を正しく使用するには、関数オブジェクトが必要です。これは括弧なしで定義されています。
コードを次のように変更すると、
<pre class="brush:php;toolbar:false"> setTimeout(GetUsersNumber, 5000);
setTimeout は、指定された遅延の後に GetUsersNumber 関数オブジェクトを呼び出すようになります。 5 秒間で、サーバーに過負荷をかけることなく、ページ値が希望の間隔で更新されるようにします。
以上が`setTimeout(GetUsersNumber(), 5000)` が 5 秒後ではなくすぐに実行されるのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。