[typescript] async/await를 사용하여 비동기 예외를 처리하는 방법은 어떻게 되나요?

JavaScript 및 TypeScript에서 asyncawait 키워드를 사용하여 비동기 작업을 수행할 때 예외를 처리하는 방법을 이해하는 것은 중요합니다. async 함수 내에서 비동기 작업을 수행하고, await 키워드를 사용하여 해당 작업의 완료를 기다리면서 동시에 예외 처리를 수행할 수 있습니다.

다음은 async/await를 사용하여 비동기 예외를 처리하는 예제 코드입니다.

async function fetchData() {
  try {
    const response = await fetch('https://api.example.com/data');
    const data = await response.json();
    return data;
  } catch (error) {
    console.error('Error fetching data:', error);
    throw error;
  }
}

async function processData() {
  try {
    const data = await fetchData();
    // 비동기 작업을 수행하면서 발생하는 예외를 처리한다.
  } catch (error) {
    console.error('Error processing data:', error);
  }
}

위 예제에서 fetchData 함수는 await 키워드를 사용하여 데이터를 가져오고, 데이터를 제대로 가져오지 못했을 때 예외를 처리합니다. processData 함수에서는 fetchData 함수를 호출하고, 해당 호출에서 발생하는 예외를 처리합니다.

async/await를 사용하여 비동기 예외를 처리할 때, try/catch 블록을 사용하여 예외를 캐치하고 적절한 방식으로 처리하는 것이 중요합니다. 이를 통해 코드의 가독성과 안정성을 높일 수 있습니다.

참고 문헌: MDN Web Docs - async function, MDN Web Docs - await, MDN Web Docs - Error

이렇게 async/await를 사용하여 JavaScript 및 TypeScript에서 비동기 예외를 처리할 수 있습니다.