Front-end/JavaScript
자바스크립트 Promise 와 async / await
NiceKHJ
2024. 8. 1. 18:27
1. Promise 란 ?
Promise 는 비동기 작업의 완료 또는 실패를 나타내는 객체 입니다.
Promise 는 세 가지 상태를 가질 수 있습니다.
- 대기(Pending) : 작업이 진행 중인 상태
- 이행(Fulfilled) : 작업이 성공적으로 완료된 상태
- 거부(Rejected) : 작업이 실패한 상태
2. async / await 란 ?
async 와 await 는 Promise 를 보다 직관적으로 사용할 수 있게 해주는 구문입니다.
async
- async 키워드를 함수 앞에 붙이면 그 함수는 항상 Promise를 반환합니다.
await
- await 키워드는 Promise 가 해결될 때까지 기다립니다.
- await 는 반드시 async 함수 내에서만 사용해야 합니다.
3. async / await 와 Promise의 관계
- async 함수는 항상 Promise 를 반환하므로 함수 안에서 await 를 사용하여 비동기 작업의 결과를 쉽게 처리할 수 있습니다.
- await 는 Promise 가 해결될 때까지 코드의 실행을 일시 정지시키고 Promise 가 이행되면 그 값을 반환합니다.
Promise 는 비동기 작업의 결과를 처리하기 위한 객체이며 async 와 await 는 이 Promise 를 보다 쉽게 사용할 수 있도록 도와주는 구문입니다. async 는 함수를 Promise 로 만들고 await 는 그 Promise 의 완료를 기다립니다.