asyncとawait

2021.02.06

async

async function() { }

function の前に記述すると、その関数は非同期処理用として定義される。

また、この関数はPromiseを返すようになる

await

await (Promise処理)

Promise処理の結果が返ってくるまで一時停止する。

ただし、「await」は「async」で定義された関数の中だけでしか使えない

// numの2乗を3秒後に返すPromise処理
function myPromise(num) {
  return new Promise(function(resolve) {
    setTimeout(function() { resolve(num * num) }, 3000)
  })
}

async function myAsync() {
    const result = await myPromise(12);
    console.log(result);                // => 144
}

async と await はペアで使うことが多い。