JavaScript Promise 객체
Promise 객체는 비동기 작업의 완료나 실패 및 결과를 나타냅니다.
Promise는 다음과 같은 3가지 상태 중 하나를 가질 수 있습니다:
pending | 초기 상태 |
rejected | 작업 실패 |
fulfilled | 작업 완료 |
实例
// Promise 객체를 생성 let myPromise = new Promise(function(myResolve, myReject) { let result = true; // 여기에 시간이 오래 걸리는 코드를 추가 if (result == true) { myResolve("OK"); } myReject("Error"); } }); // then()를 사용하여 결과를 표시 myPromise.then(x => myDisplay(x), x => myDisplay(x));
JavaScript Promise 메서드와 속성
이름 | 설명 |
---|---|
Promise.all() |
일반 Promise들의 하나의 단일 Promise를 반환합니다. 모든 Promise가 완료된 경우. |
Promise.allSettled() |
일반 Promise들의 하나의 단일 Promise를 반환합니다. 모든 Promise가 해결된 경우. |
Promise.any() |
일반 Promise들의 하나의 단일 Promise를 반환합니다. 또는 어떤 Promise가 완료되었을 때. |
Promise.race() |
일반 Promise들의 하나의 단일 Promise를 반환합니다. 빠르게 완료된 Promise가 해결될 때. |
Promise.reject() | 거부된 값을 가진 Promise 객체를 반환합니다. |
Promise.resolve() | 해결된 값을 가진 Promise 객체를 반환합니다. |
catch() | Promise가 거부될 때 호출되는 하나의 함수를 제공합니다. |
finally() | Promise가 완료되거나 거부될 때 호출되는 하나의 함수를 제공합니다. |
then() | Promise가 완료되거나 거부될 때 호출되는 두 가지 함수를 제공합니다. |