他の回答もちろん正しいです。
将来の非同期コードへの移行は、async/awaitを使用する方がずっと簡単です。
これは単純な例です。ユーティリティの機能の遅延のために、最初は長くなりますが、async/awaitを使用するとプログラムが大きくなるので、コードの実行がずっと簡単になります。
ここでも、1つのsetTimeoutが作成されます。潜在的により多くのリソースにやさしい。 async/awaitを使わずに1つのsetTimeoutを使うこともできますが、setTimeoutを連鎖させてコードをさらに難しくする必要があります。
// utility function do delay,
// can be used again..
function delay(ms) {
return new Promise((resolve) => {
setTimeout(resolve, ms);
});
}
//await can only be called from async function.
//so lets just create run function to get things started.
async function run() {
for (let x = 0; x < 5; x++) {
await delay(800);
console.log(x,"x");
}
}
//lets get things started..
run();
のsetTimeoutコード内の次のタイムアウトを設定します。 –
私はあなたにアレックスに従うか分からない。これを具体的に説明できますか – Kostis
setTimeout()を1回呼び出し、800ms後に実行するように指定したコードで、最後にもう一度setTimeout()を呼び出します。 –