Async / Await

키워드 · JavaScript

1.

JavaScript(ES2017)의 최신 구문으로, 비동기 코드를 순차적이고 읽기 쉽게 작성할 수 있게 해줍니다 — 복잡한 Promise 체인을 명확한 명령문으로 변환하여 API 호출, 데이터베이스 쿼리 및 모든 논블로킹 작업의 관리를 용이하게 합니다.

2.

Promises에 기반한 메커니즘으로 두 개의 키워드를 도입합니다: `async`는 자동으로 Promise를 반환하는 비동기 함수를 선언하고, `await`는 해당 Promise가 해결될 때까지 실행을 일시 중단합니다 — '콜백 지옥'을 제거하고 대규모에서도 코드를 유지보수 가능하게 만듭니다.

3.

클라이언트 측(React, Next.js)과 서버 측(Node.js, Express.js) 모두에서 사용되는 풀스택 현대 개발의 필수 패턴 — 네트워크 호출이나 파일 읽기와 같은 입출력 작업 중 메인 스레드를 해제하여 최적의 성능을 보장합니다.

함께 보기
Promise비동기Node.jsAPI

JavaScript에서 비동기 함수를 생성하려면 함수 선언 앞에 `async` 키워드를 배치하면 됩니다. 예: `async function fetchData() const response = await fetch('/api/data'); return response.json(); `. `async` 키워드는 반환 값을 자동으로 Promise로 변환하고, 함수 본문 내에서 `await` 사용을 허용합니다. 이것은 저희가 모든 애플리케이션에서 백엔드와의 통신을 깔끔하게 관리하기 위해 사용하는 표준 구문입니다.

비동기 함수는 `async` 키워드로 선언된 함수로, 암묵적으로 Promise를 반환하며 본문 내에서 `await` 키워드를 사용할 수 있습니다. 동기적이고 블로킹 방식으로 실행되는 일반 함수와 달리, 긴 작업(네트워크 호출, 타이머, 파일 읽기) 대기 중에 메인 스레드를 해제합니다. 이 메커니즘은 웹 애플리케이션의 반응성을 유지하고 인터페이스 차단 없이 부드러운 사용자 경험을 제공하는 데 필수적입니다.

비동기 함수는 애플리케이션의 나머지 부분을 차단하지 않고 백그라운드에서 작업을 수행할 수 있는 함수입니다. JavaScript에서는 `async` 키워드로 생성되며, `await`를 통해 긴 작업이 완료될 때까지 실행을 '일시 중단'할 수 있습니다. Async Code에서 매일 React와 Next.js 애플리케이션의 API 호출, 데이터베이스 상호작용 및 복잡한 처리를 조율하기 위해 사용하는 패턴입니다.