본문 바로가기
Javascript/ECMAScript 2017 (ES8)

[ES 8] async/await

by parkjp 2017. 9. 15.

 

2017/09/15 - [Javascript/ECMAScript 2015 (ES6)] - [ES 6] Promise 비동기 요청

 

 

1. async/await

 

Promise 패턴의 then 체이닝도 복잡하다! 더욱 간단한 방법이 async/await입니다.

async/await은 프로미스 객체를 아래 예제처럼 다양한 함수식에서 쓰일 수 있습니다.

 


async function getUser(userIdx) {
try {
let user = await Database.query(`query`);

return user;
} catch(e) {
console.log(e.message);
}
}

let getUser = async function (userIdx) {
let user = await Database.query(`query`);
};

let getUser = async (userIdx) => {
let user = await Database.query(`query`);
};

let getUser = (async () => {
let user = await Database.query(`query`);
})();

 

 위 query메소드는 promise객체를 반환하는 메소드이며 then() 체이닝말고 async/await을 적용한 예제 입니다. then() 체이닝보다 훨씬 간결하고 보기 좋아진걸 알 수 있습니다. async/await을 쓸 때에는 try catch구문으로 request 요청 시 일어날 Exception을 잡아주도록 합시다.

 

반응형