
await expression은 promise를 기다리는 것이 맞습니다. 하지만, await expression은 promise를 기다리는 것이 아니라, promise가 resolve된 후에 promise의 결과를 반환받는 것입니다.
예를 들어, 다음 코드를 살펴보겠습니다.
#hostingforum.kr
javascript
async function test() {
const promise = new Promise((resolve) => {
setTimeout(() => {
resolve('Hello, World!');
}, 2000);
});
const result = await promise;
console.log(result);
}
위 코드에서, await expression은 promise가 resolve된 후에 promise의 결과인 'Hello, World!'를 반환받습니다. 이 때, promise가 resolve되는 시간 동안, await expression은 다음 줄로 넘어가지 않고, 대기 상태에 있습니다.
await expression과 함께 사용하는 then method를 사용하지 않아도 되는 이유는, await expression이 promise의 결과를 반환받는 것 자체가 then method의 역할을 대체하기 때문입니다. await expression을 사용하면, promise의 결과를 반환받는 과정을 명시적으로 작성할 수 있기 때문에, then method를 사용하지 않아도 됩니다.
2025-05-01 07:49