[Javascript] Async & Await

min5x5·2024년 1월 8일

Javascript

목록 보기
4/4
post-thumbnail

async & await

: JavaScript에서 비동기 코드를 더 간결하고 동기적으로 작성할 수 있게 하는 기능

  • Promise를 기반으로 하며, 특히 비동기 코드를 작성할 때 가독성을 향상시키고 콜백 지옥(callback hell)을 피할 수 있다.
  • 비동기 코드를 동기적으로 작성할 수 있기 때문에, 코드가 더 읽기 쉽고 유지보수하기 편하다.
  • 여러 비동기 작업을 순차적으로 처리할 때 유용하며, Promise를 사용할 때보다 간결한 문법을 제공한다.
  1. async 함수
    • async 키워드를 함수 앞에 붙이면 해당 함수는 항상 Promise를 반환한다.
    • async 함수 내에서 await를 사용하여 Promise가 처리될 때까지 기다릴 수 있다.
    • e.g
      async function fetchData() {
        // 비동기 작업 수행
        const result = await someAsyncFunction();
        return result;
      }
      
  2. await 표현식
    • await는 Promise가 처리될 때까지 기다리고, 그 결과를 반환한다.
    • awaitasync 함수 내에서만 사용 가능하다.
    • e.g
      async function fetchData() {
        const result1 = await someAsyncFunction1();
        const result2 = await someAsyncFunction2();
        return [result1, result2];
      }
      
  3. 오류 처리
    • try-catch 블록을 사용하여 await에서 발생한 오류를 처리할 수 있다.
    • e.g
      async function fetchData() {
        try {
          const result = await someAsyncFunction();
          return result;
        } catch (error) {
          console.error("에러 발생:", error);
        }
      }
      
profile
삶에 변화를 만드는 개발자

0개의 댓글