[typescript] 타입스크립트에서의 async/await 소개

이번 포스트에서는 타입스크립트에서의 asyncawait 키워드에 대해 알아보겠습니다.

asyncawait의 기본 개념

async 함수는 항상 Promise를 반환하고, 그 결과를 기다릴 수 있도록 해줍니다. 반면에, await 키워드는 async 함수 내부에서만 사용되며, Promise가 처리될 때까지 함수의 실행을 일시 중지시킵니다.

아래는 asyncawait의 기본적인 사용 예시입니다.

async function getData() {
  let response = await fetch('https://api.example.com/data');
  let data = await response.json();
  return data;
}

위의 코드에서, fetchresponse.json은 각각 Promise를 반환하는 비동기 함수입니다. await 키워드를 사용하여 이러한 비동기 동작을 동기적으로 다룰 수 있습니다.

에러 처리

async/await를 사용함으로써, 에러 처리가 훨씬 간단해집니다. try/catch 블록을 사용하여 에러를 처리할 수 있습니다.

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

병렬 실행

async/await를 사용하면 여러 개의 비동기 작업을 병렬로 실행하고 그 결과를 기다릴 수 있습니다.

async function parallelDemo() {
  const [result1, result2] = await Promise.all([asyncTask1(), asyncTask2()]);
  console.log('result1:', result1);
  console.log('result2:', result2);
}

마무리

타입스크립트에서 async/await를 사용하면 코드를 더 읽기 쉽고, 에러 처리와 병렬 실행을 간단하게 다룰 수 있습니다. 이를 통해 비동기 코드를 더 직관적으로 작성할 수 있게 됩니다.

이상으로 async/await에 대한 타입스크립트에서의 기본적인 소개를 마치겠습니다. 감사합니다.