Promise
비동기 작업을 처리하기 위한 JavaScript의 내장 객체
Promise의 기본 상태
- 대기(pending): 비동기 작업이 진행 중인 상태
- 이행(fulfilled): 비동기 작업이 성공적으로 완료된 상태
- 거부(rejected): 비동기 작업이 실패한 상태
Promise의 주요 메서드
- then: Promise가 이행된 경우 실행할 콜백 함수를 등록한다.
- catch: Promise가 거부된 경우 실행할 콜백 함수를 등록한다.
- finally: Promise가 이행되거나 거부된 후에 항상 실행할 콜백 함수를 등록한다.
- Promise.all: 여러 개의 Promise를 동시에 실행하고, 모든 Promise가 이행될 때까지 기다린 후 결과를 반환한다.
- Promise.race: 여러 개의 Promise 중 가장 먼저 이행되거나 거부된 Promise의 결과를 반환한다.
Promise를 사용하는 이유
Promise를 사용하면 비동기 코드를 더욱 구조화하고 관리하기 쉬워질뿐만 아니라 콜백 헬(callback hell)을 피하고 비동기 코드의 가독성을 향상시킬 수 있다.