Async/Await是目前异步最好的结局方案。


let p1=function () {return new Promise((resolve)=>{setTimeout(()=>resolve(),4000);});};
let fun=async function () {console.log('1111');await p1();console.log('2222');
}
fun();

上面代码先输出了1等待了4秒然后输出了2。

使用async来标识这个函数为async函数。await只能出现在async函数中。await标识等待执行结束在执行下面的代码。

返回值


await不需要使用then可以直接得到返回值

let p1=function () {return new Promise((resolve)=>{setTimeout(()=>resolve('111'),1000);});};let fun=async function () {let message= await p1();console.log(message)}fun();

异常


await可以直接捕获异常

let p1=function () {return new Promise((resolve,reject)=>{setTimeout(()=>reject('error'),1000);});};let fun=async function () {try {let message= await p1();console.log(message)}catch(ex){console.log(ex);}}fun();

  

转载于:https://www.cnblogs.com/lemonzwt/p/8074031.html

Async/Await异步相关推荐

  1. @async 默认线程池_.NET Web应用中为什么要使用async/await异步编程?

    布莱恩特:.NET Core开发精选文章目录,持续更新,欢迎投稿!​zhuanlan.zhihu.com 前言 1.什么是async/await? await和async是.NET Framework ...

  2. 同步方法 调用异步防范_.NET Web应用中为什么要使用async/await异步编程?

    布莱恩特:.NET Core开发精选文章目录,持续更新,欢迎投稿!​zhuanlan.zhihu.com 前言 1.什么是async/await? await和async是.NET Framework ...

  3. Microsoft.Bcl.Async 使用总结--在.NET Framework 4.5项目上使用.NET Framework 4.5版本及以上版本才可以使用C# 5中的async/await异步特

    正常情况下async/await异步特性,只能在.NET Framework 4.5以上的版本才可以使用,那如果想在.NET Framework 4使用C# 5中的异步特性怎么办呢?还好有一个开源的类 ...

  4. Python 3.5将支持Async/Await异步编程

    根据Python增强提案(PEP) 第0492号, Python 3.5将通过async和await语法增加对协程的支持.该提案目的是使协程成为Python语言的原生特性,并"建立一种普遍. ...

  5. .net async/await 异步等待的数种情况

    .net 4.5 中增加了async/await,使写异步代码能像写同步代码那样,甚至伪同步执行,真是个非常好用的东西.不过,有时候我们会希望这些异步代码能伪同步执行,有时候又希望能真异步执行.所以a ...

  6. vue methods async await 异步函数

    async:作为一个关键字放到函数之前,表示函数是异步的函数,因为async就是异步的意思, 异步函数也就意味着该函数的执行不会阻塞后面代码的执行,async 函数返回的是一个promise 对象 a ...

  7. async await异步

    介绍Promise 既然有了promise 为什么还要有async await ? 因为promise 不是完美的异步解决方案,而 async await 的写法看起来更加简单且容易理解. Promi ...

  8. Async await 异步编程说明

    希望在编程上有些许提高所以 最近连续2篇博客都在说明多线程和异步编程的使用,异步和多线程之间区别请自行百度,因为理解不是特别透彻就不在叙述以免误导大家,这里写下新研究整理 task  和 await ...

  9. C# async/await异步编程深入理解

    异步函数简介 一般指 async 修饰符声明得.可包含await表达式得方法或匿名函数. 声明方式 异步方法的声明语法与其他方法完全一样, 只是需要包含 async 关键字.async可以出现在返回值 ...

最新文章

  1. java和equals区别_JAVA中==与equals的区别
  2. android百分比布局适配,安卓屏幕适配-百分比布局
  3. boost::describe模块实现枚举转字符串的测试程序
  4. vivo手机解锁_vivo“手术刀”再营业,OriginOS让手机做“减法”
  5. go学习笔记-标准库
  6. vitess源码阅读笔记cache系列之用go实现通用资源池
  7. Chrome的console
  8. 你的专业 VS 你妈口中你的专业
  9. 2021年中国低密度PET泡沫市场趋势报告、技术动态创新及2027年市场预测
  10. 六石管理学:谈谈工作技能培训
  11. kettle连接GBASE数据库
  12. 微信抢红包插件 English Version
  13. indel该右移还是左移
  14. 2022年全球备用锂电池管理系统行业分析报告
  15. android Removing unused resources requires unused code shrinking to be turned on. 错误记录
  16. 邮件html签名手机电脑不一致,HTML电子邮件签名不能在iPhone上正确渲染
  17. 妹子说头像爬的太慢?升级到多线程程序爬取头像
  18. unity ,color组件
  19. 迈思德物联网网关问答集锦
  20. arcgis中制作出行od图_arcgis制作坡度图

热门文章

  1. Python_XPath
  2. 用纯css3和html制作一些泡沫对话框
  3. window+VS+OpenCV编译libfacedetection库进行人脸检测
  4. 求链式线性表的倒数第K项 (20 分)
  5. 7-2 个位数统计 (15 分)
  6. python while无限循环、人为终止_Python while while循环永远不会停止,即使它应该
  7. 音频断句Matlab,一步一步教你实现iOS音频频谱动画(二)
  8. hadoop 批流处理的实现_从T+1到T+0,浅谈PetaBase的实时流式处理
  9. font-weight属性
  10. 标准JavaBean