Await는 이 promise 함수가 다 실행될 때까지 기다리라는 의미이다.
반드시 Async 함수 안에서 사용해야 한다.
const a = () => {
return new Promise(resolve => {
setTimeout(() => {
console.log(1)
resolve()
}, 1000)
})
}
const b = () => {
return new Promise(resolve => {
setTimeout(() => {
console.log(2)
resolve()
}, 1000)
})
}
const c = () => console.log(3)
const wrap = async() => {
await a() // a가 실행될 때까지 기달
await b()
c()
}
wrap()
const 함수 = val => {
return new Promise((resolve, reject) => {
if (조건) {
resolve('성공') // 인수가 then 속의 함수로 전달
} else {
reject('실패') // 인수가 catch 속의 함수로 전달
}
})
}
const wrap = async () => {
try {
const res = await 함수(val)
console.log(res)
} catch (err) {
console.log(err)
} finally (err) {
console.log("done")
}
}
wrap()
const wrap = async () => {
for (const val of list) {
const res = await 함수(val)
console.log(val, res)
}
}
wrap()