ES2022からAsync Functionで囲まなくてもawaitのsleepが可能に

awaitのsleepがより可能に

JavaScriptでawaitを使用してsleepを実装する際はawaitがAsync Functionを囲まないと実行できなかったため以下のようにする必要があった。

async function sample() {
  console.log('開始')
  await new Promise(s => setTimeout(s, 3000))
  console.log('開始から3秒経過')
}
 
sample()

しかし、ES2022からはAsync Functionで囲まなくてもawaitが実行可能になったので以下のコードで実行できます。

console.log('開始')
await new Promise(s => setTimeout(s, 3000))
console.log('開始から3秒経過')

ChromeのConsoleでも実行できるので試してみてください。