자바스크립트 비동기 예외 처리: Promise와 async/await
자바스크립트에서 비동기 코드를 작성하면서 예외 처리를 제대로 수행하는 것은 중요합니다. Promise와 async/await에서 예외를 잘 처리하려면 각각의 에러 처리 방법을 이해하고 적절하게 사용해야 됩니다. 이 글에서는 Promise와 async/await를 사용하여 비동기 코드에서 예외를 처리하는 방법에 대해서 간략하게 알아보겠습니다.
1. Promise에서 예외 처리하기
1.1. catch 메서드 사용하기
Promise에서 발생한 에러를 처리하기 위해 catch 메서드를 사용할 수 있습니다. catch 메서드는 then 메서드와 마찬가지로 체인이 가능하고 이전 작업에서 발생한 에러를 처리할 수 있습니다.
▼ 예제 코드
myAsyncFunction()
.then((result) => {
// ...
})
.catch((error) => {
console.error('Error:', error);
});
1.2. then 메서드의 두 번째 인자로 에러 처리 함수 전달하기
then 메서드의 두 번째 인자로 에러 처리 함수를 전달하는 방법도 있습니다. 하지만 이 방식은 권장되지 않고 catch 메서드를 사용하는 것이 더 명확하고 가독성이 좋습니다.
▼ 예제 코드
myAsyncFunction()
.then(
(result) => {
// ...
},
(error) => {
console.error('Error:', error);
}
);
2. async/await에서 예외 처리하기
async/await를 사용할 때는 전통적인 try-catch 구문을 사용하여 예외를 처리할 수 있습니다. 이 방식은 동기 코드에서의 에러 처리와 유사한 구조입니다.
▼ 예제 코드
async function myAsyncFunction() {
try {
const result = await someAsyncOperation();
// ...
} catch (error) {
console.error('Error:', error);
}
}
관련 이전 게시글
- 자바스크립트 비동기 처리: Promise 사용하기
- 자바스크립트 비동기 처리: async/await 사용하기
- 자바스크립트 예외 처리: try, catch, finally 구문과 throw 사용법
- 자바스크립트 에러 객체: Error, TypeError, ReferenceError 등 사용
- 자바스크립트 사용자 정의 예외 처리: Custom Error 객체 생성 및 사용
이 글이 도움이 되셨다면 공유를 부탁 드립니다. 다음 글에서 뵙겠습니다!