仕事ですぐに使えるTypeScriptを読んでいくその13

これは

TypeScriptの学習にとても役立ちそうなドキュメントを教えてもらったので
コツコツと読んでいく記事です。

参考

著作権者:フューチャー株式会社(Future Corporation)様

future-architect.github.io

非同期処理3

昨日は非同期と制御構文についてでした。

Promiseの分岐と待ち合わせの制御

Promiseはタスクが完了した時に通知する約束。
awaitを使えばタスクの組み合わせも簡単にできる。

・asyncのついた関数「魚を切る」と「ビールを注ぐ」
・Promise.all()は全部のPromiseが完了するのを待つ
・Promise.allは引数全ての結果が得られると結果をリストで返すPromiseを発行する
・類似しているものでPromise.race()が存在し、それはどれか一つでも完了すると実行される。

async function 魚を切る(): Promise<お刺身> {
    await 包丁();
    return new お刺身;
}

async function ビールを注ぐ(): Promise<ナマ> {  
   await サーバー;
   return new ナマ;
}

const [aお刺身, aナマ] = await Promise.all([魚を切る(), ビールを注ぐ()]);
カンパイ(aお刺身, aナマ); 

今日はここまで。