[typescript] 타입스크립트에서의 비동기 작업 에러 처리 방법
타입스크립트에서 비동기 작업을 수행할 때, 에러 처리는 매우 중요합니다. 이 글에서는 타입스크립트에서의 비동기 작업 중 에러를 처리하는 방법에 대해 알아보겠습니다.
1. Promises를 이용한 에러 처리
일반적으로, Promise를 사용하여 비동기 작업을 처리할 때, then
과 catch
를 이용해 에러를 처리합니다.
function fetchData(): Promise<string> {
return new Promise((resolve, reject) => {
// 비동기 작업 수행
if (errorOccurred) {
reject(new Error('에러 메시지'));
} else {
resolve('데이터');
}
});
}
fetchData()
.then((data) => {
// 데이터 처리
})
.catch((error) => {
// 에러 처리
});
2. async/await
를 이용한 에러 처리
async/await
를 사용하면 비동기 작업을 동기적으로 작성할 수 있으며, try/catch
블록을 사용하여 에러를 처리할 수 있습니다.
async function fetchData() {
try {
const data = await getData();
// 데이터 처리
} catch (error) {
// 에러 처리
}
}
3. Custom Error 클래스 활용
에러를 더욱 명확하게 다루고 싶을 때, 커스텀 에러 클래스를 활용할 수 있습니다.
class CustomError extends Error {
constructor(message: string) {
super(message);
this.name = this.constructor.name;
}
}
async function fetchData() {
try {
// 비동기 작업 수행
} catch (error) {
throw new CustomError('사용자 정의 에러 발생');
}
}
결론
타입스크립트에서 비동기 작업을 처리할 때, Promises
, async/await
, 그리고 커스텀 에러 클래스를 활용하여 에러 처리를 명확하게 할 수 있습니다. 올바른 에러 처리는 안정적이고 견고한 애플리케이션을 개발하는 데 중요한 요소입니다.
참고: 타입스크립트 공식 문서