7장 비동기

Promise와 async await 흐름

비동기 코드는 시간이 걸리는 작업의 결과를 Promise로 표현하고 async/await으로 읽기 쉬운 순서 흐름을 만듭니다.

01

Pending

비동기 작업이 아직 끝나지 않은 대기 상태입니다.

02

Fulfilled

작업이 성공하면 then 또는 await 다음 코드가 결과를 받습니다.

03

Rejected

실패하면 catch나 try...catch에서 오류를 처리합니다.

04

Compose

Promise.all, race, 순차 await으로 여러 작업의 관계를 설계합니다.

then catch

Promise 체이닝은 성공과 실패 흐름을 메서드 연결로 표현합니다.

async 함수

항상 Promise를 반환하며 내부 await 지점에서 비동기 작업을 순서대로 기다립니다.

병렬 처리

서로 독립인 요청은 Promise.all로 동시에 시작해 시간을 줄입니다.

오류 처리

네트워크 실패와 응답 상태 실패를 구분해 처리 기준을 세웁니다.

설계 질문

작업들이 서로 기다려야 하는지, 동시에 실행해도 되는지 먼저 판단합니다.

Promise와 async awa 실수 방지

await을 반복문에 무심코 넣으면 독립 작업도 순차 실행될 수 있습니다.

Promise와 async await 흐름

두 API 요청을 순차와 병렬 방식으로 작성하고 차이를 설명합니다.