728x90
반응형
JavaScript Promise는 비동기 작업을 보다 간편하게 처리하기 위한 객체입니다. 이 글에서는 Promise의 개념과 기본적인 사용법을 소개하고, 간단한 예제를 통해 실제로 구현하는 방법을 알아보겠습니다.
Promise란 무엇인가?
- Promise는 JavaScript에서 비동기 작업을 처리하기 위한 객체입니다. 비동기 작업이 완료되면 결과 값을 반환하거나 오류를 처리할 수 있습니다.
Promise의 세 가지 상태:
- 대기(Pending): 비동기 작업이 아직 수행되지 않은 상태입니다.
- 이행(Fulfilled): 비동기 작업이 성공적으로 완료된 상태입니다.
- 거부(Rejected): 비동기 작업이 실패한 상태입니다.
Promise의 기본 사용법:
- Promise는 new 키워드를 사용하여 생성됩니다. 비동기 작업을 수행하는 함수를 전달하여 Promise 객체를 생성할 수 있습니다.
- Promise 객체에는 then() 메서드를 사용하여 이행 상태와 거부 상태에 대한 처리를 정의할 수 있습니다.
728x90
Promise 예제:
- 아래는 Promise를 사용하여 비동기적으로 데이터를 불러오는 예제입니다.
function fetchData() {
return new Promise((resolve, reject) => {
// 비동기 작업 수행
setTimeout(() => {
const data = '데이터가 성공적으로 불러와졌습니다.';
resolve(data); // 작업 성공 시 resolve 호출
}, 2000);
});
}
// Promise 사용 예제
fetchData()
.then((result) => {
console.log(result); // 데이터가 성공적으로 불러와졌습니다.
})
.catch((error) => {
console.error(error); // 오류 처리
});
주의사항:
- Promise는 비동기 작업을 처리하는 데 유용하지만, 콜백 지옥과 같은 문제를 해결하기 위한 것은 아닙니다. 복잡한 비동기 코드를 작성할 때에는 async/await 또는 Promise 체이닝을 활용하여 가독성을 높일 수 있습니다.
Promise는 JavaScript에서 비동기 작업을 보다 효율적으로 처리하기 위한 도구로, 비동기 코드를 간단하게 작성하고 관리할 수 있습니다. then()과 catch() 메서드를 활용하여 성공과 실패에 대한 처리를 쉽게 구현할 수 있으며, 복잡한 비동기 코드를 작성할 때에도 유용하게 활용됩니다.
반응형
728x90
반응형
'Js . jQuery' 카테고리의 다른 글
| JavaScript에서 map() 메서드 활용하기 (0) | 2024.03.09 |
|---|---|
| 자바스크립트 비동기 프로그래밍 이해하기 (0) | 2024.03.09 |
| 자바스크립트 클로저(Closures)의 이해 (0) | 2024.03.09 |
| Cross-Origin에 대한 이해 (0) | 2024.03.09 |
| const 와 let 의 차이점 (0) | 2024.03.09 |