美文网首页
async/await 怎么用,如何捕获异常?

async/await 怎么用,如何捕获异常?

作者: 浪味仙儿啊 | 来源:发表于2020-12-18 14:20 被阅读0次

async/await可以和Promise结合在一起用

function 摇色子(){
  return new Promise((resolve,reject)=>{
    setTimeout(()=>{
        let n = parseInt(Math.random() *6 +1,10)
      resolve(n)
    },3000)
  })
}

async function test(){
    let n = await 摇色子()
  console.log(n)
}
test()

await只能放在async函数里面

用try catch可以捕获异常

function 猜大小(){
  return new Promise((resolve,reject)=>{
    setTimeout(()=>{
        let n = parseInt(Math.random() *6 +1,10)
      if(n>3){
        if(猜测 === "大"){
            resolve(n)
        }else{
            reject(n)
        }
      }else{
        if(猜测 === "小"){
            resolve(n)
        }else{
            reject(n)
        }
      }
    },3000)
  })
}

async function test(){
  try{
    let n = await 猜大小("大")
    console.log("好嗨哟" + n)
  }catch(error){
    console.log("输光了" + error)
  } 
}
test()

但需要猜测两次以上大小时,得用promise.all或promise.race

那为什么要用async/await呢?

因为更像同步函数。

相关文章

网友评论

      本文标题:async/await 怎么用,如何捕获异常?

      本文链接:https://www.haomeiwen.com/subject/qrgxnktx.html