Async/await
asnyc/await 는 비동기 코드를 작성하는 새로운 방법이다. 이전에는 비동기코드를 작성하기 위해 callback이나 promise를 사용해야 했다. async/await 는 실제로는 최상위에 위치한 promise에 대해서 사용하게 된다. async/await는 promise처럼 non-blocking 이다.
// promise 연속 호출
function getData() {
return promise1()
.then(response => {
return response;
})
.then(response2 => {
return response2;
})
.catch(err => {
//TODO: error handling
// 에러가 어디서 발생했는지 알기 어렵다.
});
}
// async / await 연속 호출
async function getData() {
const response = await promise1();
const response2 = await promise2(response);
return response2;
}