Programming/JavaScript
JavaScript Promise에 대해서
d-e-v-j
2024. 11. 9. 09:20
반응형
JavaScript 의 Promise는 비동기 작업의 완료, 실패를 나타내는 객체이다.
Promise의 상태
- 대기(pending): 초기 상태, 이행도 거부도 되지 않은 상태
- 이행(fulfilled): 비동기 작업이 성공적으로 완료된 상태
- 거부(rejected): 비동기 작업이 실패한 상태
Promise의 기본 사용법
const myPromise = new Promise((resolve, reject) => {
// 비동기 작업 수행
let success = true; // 예를 위한 조건
if (success) {
resolve("작업 성공");
} else {
reject("작업 실패");
}
});
Promise의 메서드
- then() : Promise 가 이행되었을 때 호출되는 메서드
- catch() : Promise가 거부되었을 때 호출되는 메서드
- finally() : Promise의 이행여부와 상관없이 항상 호출되는 메서드
사용예시
myPromise
.then(result => {
console.log(result); // "작업 성공"
})
.catch(error => {
console.error(error); // "작업 실패"
})
.finally(() => {
console.log("작업 완료");
});
Promise 체이닝
Promise 는 체이닝이 가능하여, 여러 비동기 작업을 순차적으로 수행할 수 있다.
myPromise
.then(result => {
console.log(result);
return anotherPromise; // 다음 Promise 반환
})
.then(anotherResult => {
console.log(anotherResult);
})
.catch(error => {
console.error(error);
});
이처럼 Promise 를 이용하면 비동기 코드를 더 간결하고 쉽게 작성할 수 있다.
728x90
반응형
LIST