generated at
async
Promiseを返す非同期関数を定義する

以下は同じ
js
const usePromise = () => Promise.resolve(1); const useAsync = async () => 1;
いずれも返り値の型は Promise<number>
後者は、内部でPromiseを作る操作をしていないがPromiseが返ることを意識する
前者は、2重でPromiseを作っている感じになる
しかし、実際の結果はflatになる


この関数がreturnしたとき、Promiseは戻り値をresolveする
例外をthrowしたときは、その値をrejectする
Promiseとの対応.ts
const usePromise = () => new Promise<number>((resolve, reject) => { if (A > 10) { resolve(A); } reject(B); }); const useAsync = async () => { if (A > 10) { return A; } throw B; };