promise 객체를 좀 더 쉽게 다룰 수 있게 고안된 문법.
async 기본 예제
async function greet() {
return 'hello';
}
greet().then(console.log);
async 함수에서는 promise가 아닌 값을 리턴하더라도 resolved promise가 반환된다.
await 기본 예제
function greet() {
return new Promise(function(resolve){
setTimeout(function() {
resolve('hello');
}, 1000);
});
}
(async function() {
var result = await greet(); //resolved 될 때까지 대기
console.log(result);
})();
1초 후 hello가 출력된다.
promise.then을 사용하는 것보다 훨씬 간결하여 쓰기도 편하고 가독성도 뛰어납니다. async로 선언된 함수 안에서만 사용이 가능하고 await 키워드를 사용하더라도 그 작업이 처리되는 동안 다른 모든 프로세스가 중단되는 것은 아니며 엔진이 다른 일을 할 수 있으므로 자원이 비효율적으로 운영되지 않는다.
'Javascript > Node.js' 카테고리의 다른 글
메서드와 this (0) | 2021.09.27 |
---|---|
ESLint (0) | 2021.09.13 |
프라미스(promise) (0) | 2021.09.13 |
[Node.js] 3. 코드 스타일 (0) | 2021.09.13 |
[Node.js] 2. 에러 처리 방법 (0) | 2021.09.10 |