3. Promise 상태
Promise 객체는 다음의 세 가지 상태 중 하나를 가짐
| 상태 | 설명 | 특징 |
|---|---|---|
| Pending(대기) | 작업의 이행여부가 결정되지 않은 초기 상태 | 결과(이행 또는 거부)가 결정되지 않음 |
| Fulfilled(이행) | 작업이 성공적으로 완료된 상태 | .then()으로 처리 결과값을 받을 수 있음 |
| Rejected(거부) | 작업이 실패하여 거부된 상태 | .catch()에서 실패 이유를 받을 수 있음 |
Promise 상태 in 비동기 작업
비동기 작업 맥락에서 Promise의 상태는 다음과 같음
| 구분 | 상태 | 상태가 변경되는 조건 |
|---|---|---|
| pending | 비동기 작업 수행 전 | Promise 객체 생성 직후 기본 상태 |
| fulfilled | 비동기 작업 수행 결과 응답 성공 | resolve 함수 호출 시 |
| rejected | 비동기 작업 수행 결과 응답 실패 | reject 함수 호출 시 |
비동기 작업의 성공, 실패 여부에 따라 각 resolve/reject 함수를 호출하면 Promise 객체의 상태는 pending에서 각각 fulfilled, rejected 상태로 변경됨
Last updated on