10.4 本章のまとめ
この章では次のようなことを学習しました。
Pickup Lecture
- Promise は、非同期処理の「結果(成功または失敗)」を管理するための特別なオブジェクトである。
- Promise には、Pending、Fulfilled、Rejected の 3 つの状態が存在する。
- Promise の実行結果には resolve(処理成功)と reject(処理失敗)がある。
- Promise の結果判定が終わった後、結果に応じて.then()、.catch()、.finally()のメソッドが自動的に実行される。
- Promise のメソッドの様に.(ドット)で改行してメソッドを書くスタイルをメソッドチェーンと言う。
- async/await を使えば、非同期処理を普通の同期処理のように、上から下へ順番に書くことができる。
- JavaScript における try-catch-finally は、単なる例外処理だけでなく、async/await を使った非同期処理の制御フロー(成功/失敗)を記述する標準的な手段として頻繁に使用される。
- JavaScript には TypeError、ReferenceError、RangeError など複数のエラーオブジェクトが存在する。すべて message(説明文)と name(種類名)プロパティを持ち、instanceof を使って種類ごとに処理を分岐できる。
この章では、JavaScript の非同期処理で重要な Promise と async/await を学びました。また、その際に重要なエラー処理を実装する try-catch-finally を学習しました。Promise オブジェクトはいささか複雑なため、処理を覚えて正しく使いこなすには、何度もトライする必要があります。確かに JavaScript における非同期処理の記述は簡潔になり、便利に使えるようになったのは確かですが、だからといってプログラミングが簡単になったわけではなく、記述が簡潔になったことで生じる別の難しさがあることも見えたと思います。
これまで以上に、何度も何度も反復学習とコーディングを繰り返し、非同期処理への正しい理解を深めるように心がけてください。
