Promise와 Async & Await

• Promise는 비동기 작업의 결과를 나타내는 객체로, 대기(pending), 이행(fulfilled), 거부(rejected)의 세 가지 상태를 가지며, 비동기 작업이 완료되면 then 메서드를 통해 결과를 반환하거나 catch 메서드를 통해 에러를 처리합니다.
• Promise 클래스는 여러 비동기 작업을 동시에 처리할 수 있는 정적 메서드들을 제공하며, Promise.all()은 모든 프로미스가 이행될 때까지 기다렸다가 결과를 반환하고, Promise.allSettled()는 모든 프로미스가 해결되면 각각의 상태와 값을 반환합니다.
• `Promise.any()`와 `Promise.race()`는 JavaScript에서 비동기 프로미스를 다루는 두 가지 방법입니다. `Promise.any()`는 주어진 프로미스 중 하나라도 이행되면 결과를 반환하고, 모두 거부되면 에러를 반환합니다. 반면, `Promise.race()`는 주어진 프로미스 중 가장 빠르게 이행되거나 거부된 결과를 반환합니다.
• `async`와 `await` 키워드를 사용하면 비동기 프로미스 기반 코드를 동기적으로 작성할 수 있습니다. `await`을 사용하면 프로미스가 이행되거나 거부될 때까지 함수 실행이 일시 중지되며, 이를 통해 코드의 가독성과 작성의 편리성이 향상됩니다.

북마크
공유하기
신고하기