ホームページ >ウェブフロントエンド >jsチュートリアル >次のコード行を実行する前に JavaScript で 5 秒の遅延を作成するにはどうすればよいですか?
JavaScript で作業する場合、実行フローの制御が最も重要です。次のシナリオを考えてみましょう。変数の値のチェックなど、特定のアクションを実行する前に 5 秒間一時停止する関数が必要です。
従来、JavaScript 開発者は setTimeout 関数を利用して実行に遅延を生じさせてきました。この関数は 2 つのパラメータを取ります。実行するコードを表す文字列と、ミリ秒で表される遅延です。あなたの特定のケースでは、以下のコードの抜粋は不十分です:
<br>function stateChange(newState) {<br> setTimeout('', 5000);</p> <p> if (newState == -1) {</p> <p>}<br>}<br>
ここでの問題は、setTimeout に渡される空の文字列が何の効果もありません。 newState 変数をチェックする前に 5 秒の遅延を作成するには、コードを次のように変更する必要があります:
<br>function stateChange(newState) {<br> setTimeout(() = > {</p> <p>}, 5000);<br>}<br>
最初の引数として関数を指定すると、遅延後に実行されます。これで、関数は newState をチェックする前に 5 秒間正確に一時停止します。
最新の JavaScript では、async/ を活用することもできます。同じ結果が得られるまで待ちます。 Async/await により、非同期操作が簡素化され、コードが読みやすくなります。シナリオに合わせて実装する方法は次のとおりです。
<br>const late = (ms) => new Promise(resolve => setTimeout(resolve, ms));</p> <p>async function stateChange(newState) {<br> await遅延(5000);</p> <p>if (newState == -1 ) {</p> <p>}<br>}<br>
このコードは、指定された遅延後に解決される Promise を返す遅延関数を使用しています。 async/await を使用すると、stateChange 関数を非同期関数として宣言し、遅延の完了を待ち、newState をチェックする前に 5 秒間の一時停止を確保します。
以上が次のコード行を実行する前に JavaScript で 5 秒の遅延を作成するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。