Warning: count(): Parameter must be an array or an object that implements Countable in /home/xs638785/agile-software.site/public_html/wp-content/plugins/rich-table-of-content/functions.php on line 490
Promiseを使った非同期処理を簡潔に記述することができる。
非同期処理は時間のかかる処理の結果を待たずにすぐ次の処理を実行できる仕組み。
Promiseの状態
- apending: 初期状態、実行中。成功も失敗もしていない
- fulfilled: 処理が完了した状態。then メソッドを呼び出す
- rejected: 処理が失敗した状態。then メソッドと catch メソッドを呼び出す
Promiseのthen
Promise のインスタンスの状態が fulfilled
となったときに実行する関数を登録できるインスタンスメソッドです。
Promiseのcatch
Promise のインスタンスの状態が rejected
となったときに実行する関数を登録するインスタンスメソッドです。
asyncとは
asyncはfunctionの前に記述するだけで非同期処理を実行できる関数を定義できる
async function(){}
この関数はPromiseを返すようになる。
awaitとは
awaitはPromise処理の結果が返ってくるまで一時停止してくれる演算子
await Promise処理
awaitはasyncで定義された関数の中だけでしか使えない