JavaScript

javaScript-Async Await

용용it 2023. 8. 30. 23:16

async/await

 

비동기 프로그래밍은 작업이 순차적이 아닌 동시에 여러 작업이 처리되는 방식이다.

 

이를 통해 프로그램이 더 효율적으로 동작할 수 있지만, 코드의 복잡성이 증가하고 가독성이 낮아질 수 있다.

 

때문에 async/await는 이런 비동기적인 작업을 더 쉽게 다루기 위해 도입된 개념이다. 

 

 

 

async 함수 : 함수 선언 앞에 async 키워드를 붙여서 선언한다.

 

이렇게 선언된 함수 내에서는 await 키워드를 사용하여 비동기 작업의 완료를 기다릴 수 있다.

 

async 함수는 언제나 Promise를 반환한다. 

 

await 함수 : await 키워드는 async 함수 내에서만 사용 가능하며, 프로미스를 기다리는 역할을 한다.

await 키워드 다음에 오는 표현식이 완료될 때까지 해당 함수의 실행을 일시 중단하고, 그 후 결과 값 반환.

 


 

async 함수를 선언하는 방법은 두 가지가 있다.

 

1. 일반적인 함수 선언 방식

 

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

fetchData();

 

 

 

 

 

2. 화살표 함수 사용 방식

 

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

fetchData();

 

 

두 방식은 기능적으로 동일하지만, async 함수의 정의 방식에 차이가 있을 뿐이다.

'JavaScript' 카테고리의 다른 글

javaScript-스택 트레이스  (0) 2023.08.31
javaScript-Resolve, Reject, 에러 핸들링  (0) 2023.08.31
javaScript-Promise  (0) 2023.08.28
javaScript-콜백 지옥  (0) 2023.08.28
javaScript-동기, 비동기  (0) 2023.08.28