async, await

김혁중·2022년 3월 19일
0

JavaScript

목록 보기
20/23

new Promise

기본

function timer(time) {
  return new Promise((resolve, reject) => {
    setTimeout(() => {
      resolve(time)
    }, time)
  })
}

timer(1000).then(time => console.log(time))

promise hell 극복

timer(1000)
  .then(time => {
    console.log(time)
    return timer(time+1000)
  })
  .then(time => {
    console.log(time)
    return timer(time+1000)
  })
  .then(time => {
    console.log(time)
  })

async, await

사용

async function run() {
  let time = await timer(1000)
  console.log(time)
  time = await timer(time + 1000)
  console.log(time)
  time = await timer(time + 1000)
  return time
}

run()
  .then(time => console.log(time))
  • await 또한 promise를 return
  • 따라서 then 사용 가능
profile
Digital Artist가 되고 싶은 초보 개발자

0개의 댓글