美文网首页
async和await

async和await

作者: 救救小亮 | 来源:发表于2020-12-14 11:30 被阅读0次

async 是一个修饰符,async 定义的函数会默认的返回一个Promise对象resolve的值,因此对async函数可以直接进行then操作,async函数返回的值即为then方法的传入函数

示例


  async function a(){
    return 'async函数返回的参数';
  }

  a().then(res=>{
    console.log(res) //async函数返回的参数
  })

await 关键字只能放在 async 函数内部, await关键字的作用就是等待右侧表达式返回的内容,如果右侧表达式返回的不是Promise对象,则该返回值就是await等到的值;如果右侧表达式返回的是Promise对象,await就会阻塞后面的代码,等待resolve或者reject返回值

示例


async function c(){
    var a = await 1
    var b = await new Promise((resolve,reject)=>{
        setTimeout(()=>{
            resolve('5秒')
        },5000)
    })
    console.log(a,b) //5秒后输出 1 5秒
}
c()

若执行reject返回,await会将reject的返回值作为异常抛出,搭配trycatch使用可以使代码更加清晰

示例

async function c(){
    try{
        var b = await new Promise((resolve,reject)=>{
            setTimeout(()=>{
                resolve('5秒')
            },5000)
            reject('异常原因')
        })
    } catch (err){
        console.log(err) // 异常原因
    }
}
c()

相关文章

  • async和await

    浅谈Async/Await用 async/await 来处理异步 async和await async:声明一个异步...

  • ES8(一) —— async&await

    目录 async和普通函数的区别 await async/await处理多回调异步 async和await必须配合...

  • ES6中的好东西

    1 Await/Async 前端的回调时代我没有赶上,我赶上的是await/async时代。await和async...

  • 使用 async 和 await,实现 fetch 同步请求

    使用 async 和 await,实现 fetch 同步请求 关于 async 和 await 的介绍https:...

  • ES2017 async 函数

    async 和 await 在干什么 每个名称都有意义async : 异步await: async wait简...

  • async-await

    一、async-await和Promise的关系 async-await是promise和generator的语法...

  • 小程序-云开发

    async和await async:异步(无等待)await:等待(是为了同步) 一、await 关键字只在 as...

  • async / await

    async / await 优缺点 async 和 await 相比直接使用 Promise 来说,优势在于处理 ...

  • flutter中compute和isolate

    async和await:对于普通的任务,使用async和await可实现异步处理任务,而async的处理方式并非使...

  • Promise 执行顺序

    使用 async 和 await

网友评论

      本文标题:async和await

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