프로미스를 쉽게 사용할 수 있게 만든 비동기 함수로 일반 함수 앞에 async를 붙이면 해당 함수를 프로미스로 반환한다.
async function isAsync() {
return "프로미스로 반환됩니다"
}
isAsync().then(alert); // "프로미스로 반환됩니다"
await
await는 async 함수 내에서만 작동하며 Promise가 처리될 때까지 기다렸다가 구문을 실행한다.
async function isAsync() {
const isPromise = new Promise((res, rej) =>
// new Promise로 promise 함수 호출
setTimeout(() => { // 3초 딜레이 후 resolve 값 반환.
res("3초 기다렸다가 출력.");
}, 3000)
);
const result = await isPromise;
// promise가 진행되는 3초간 대기 후 result에 resolve 값 전달
alert(result);
}
isAsync(); // "3초 기다렸다가 출력"
'JavaScript' 카테고리의 다른 글
[JavaScript] 소수점 오류? 0.30000000000000004 (0) | 2023.04.08 |
---|---|
[JavaScript] 옵셔널 체이닝 / nullish연산자(??) (0) | 2023.04.07 |
[JavaScript] fetch_more (0) | 2022.12.28 |
[JavaScript] 프라미스(promise) 객체 (0) | 2022.12.28 |
[JavaScript] try...catch 에러 핸들링 (0) | 2022.12.28 |