JavaScript
Promise & Aysnc & Await
매료매료
2021. 10. 18. 15:54
Promise
- 비동기 작업이 맞이할 미래의 완료 또는 실패와 그 결과 값
- 함수에 콜백을 전달하는 대신에, 콜백을 첨부하는 방식의 객체
- chaning을 통해 비동기 작업을 순차적으로 실행할 수 있음. (콜백과 비교하였을때 원하는만큼 .then을 호출할 수 있음)
- resolve, reject는 async/await 문법이 생긴후로 쓸모없어짐. -> Promise.then / catch가 거의 필요없음.
Async
- function() 앞에 async 키워드를 추가하면 await 키워드가 비동기 코드를 호출할 수 있게 해주는 함수
- 언제나 promise를 반환함.
Await
- async 함수 안에서만 동작
- 자바스크립트는 await 키워드를 만나면 Promise가 처리될때까지 기다림.
- 최상위 레벨 코드에선 사용할수 없으나, 익명 async 함수로 코드를 감싸면 사용가능.