mathematicsclub  2023/06/03更新

Promiseを用いた非同期処理


Promiseがresolveかrejectになるまで処理を待ってくれる

const promiseFunc = () =>{
  return new Promise((resolve, reject) =>{
    someAsynchronousFunc(() =>{
      //何かしら何かしらの非同期処理
    }).then(()=>{
      //非同期処理が成功した場合
      return resolve('成功')
    }).catch(()=>{
      //非同期処理が失敗した場合
      return reject('失敗')
    })
  })
}


しかし、Promiseだと.thenをチェインしないといけないそこで

const promiseFunc = () =>{
  return new Promise((resolve, reject) =>{
    someAsynchronousFunc(() =>{
      //何かしら何かしらの非同期処理
    }).then(()=>{
      //非同期処理が成功した場合
      return resolve('成功')
    }).catch(()=>{
      //非同期処理が失敗した場合
      return reject('失敗')
    })
  })
}


このようにasync, awaitを用いて記述することも可能

タイトルとURLをコピーしました