ES7提供了async函数,使得异步操作变得更加方便。async函数是什么?一句话,async函数就是Generator函数的语法糖。

例1:

var asyncFun = async function () {var f1 = await function() {console.log('aaaaaa');}();var f2 = await function () {console.log('bbbbbb');}();console.log('执行完毕');
};asyncFun();

实例:

结果:

例2:

let asyncFun1 = async function(){console.log('aaaaaa');await Promise.reject('出错啦');  // 抛出例外,直接到例外处处理return '第1';
}let asyncFun2 = async function(data){console.log('bbbbbb');console.log('收到参数:' + data);return '第2';
}asyncFun1().then(asyncFun2)
.then(function(data){console.log('data:' + data);
})
.catch(function(error){console.log('end,error:' + error);
});

实例:

结果:

实例:

结果:

例3:异步处理(最彻底的解决方案)

async函数返回的Promise对象,必须等到内部所有 await 命令的Promise对象执行完,才会发生状态改变。也就是说,只有async函数内部的异步操作执行完,才会执行then方法指定的回调函数。

let asyncFun1 = async function(){return new Promise(function(resolve,reject){setTimeout(function(){console.log('aaaaaa');resolve(123);},2000);});
};let asyncFun2 = async function(data){return new Promise(function(resolve,reject){setTimeout(function(){console.log('bbb收到数据:' + data);resolve(456);},1000);});
};asyncFun1().then(asyncFun2)
.then(function(data){console.log('data:' + data);
})
.catch(function(error){console.log('end,error:' + error);
});

实例:

结果:

async [ə'zɪŋk] 函数相关推荐

  1. matlab syms函数例题,matlab函数计算syms f o s z k D t m q T x;p=f-o-(s-o)*(1-erf(0.5*

    问题描述: matlab函数计算 syms f o s z k D t m q T x; p=f-o-(s-o)*(1-erf(0.5*z/(k*D*(t^m)*exp(q*(1/T-1/273))* ...

  2. hdu4282 x^z+y^z+x*y*z=k 解的个数

    题意:      x^z + y^z + x*y*z = k; (x < y ,z > 1),给你一个k问有多少组解. 思路:        暴力枚举z,y,然后二分查找x.注意一点最好用 ...

  3. 定义一个 k 函数,这样写正确吗?

    我这里有一个程序的一部分,大家能帮我看一下这段程序正确吗?定义一个k函数,这样写正确吗? double CF2DH_FieldCalc_316L::uf_k(long a_m, long a_l,lo ...

  4. 面试官问 async、await 函数原理是在问什么?

    大家好,我是若川.这是 源码共读活动<1个月,200+人,一起读了4周源码> 第四期,纪年小姐姐的第四次投稿.纪年小姐姐通过本次学习提早接触到generator,协程概念,了解了async ...

  5. vue methods async await 异步函数

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

  6. javascript中的this讲解

    查看this指向的一句话法则: 永远指向其所在函数的所有者如果没有所有者时,指向window. 理解this的要点:关键在于将函数与函数名分开看待.同一个函数,在不同的执行方法下,会有不同的效果. 如 ...

  7. 阮一峰老师的ES6入门:async 函数

    async 函数 1. 含义 ES2017 标准引入了 async 函数,使得异步操作变得更加方便. async 函数是什么?一句话,它就是 Generator 函数的语法糖. 前文有一个 Gener ...

  8. 信号与系统(Python) 学习笔记 (8.1) 离散系统z域分析 -- 系统函数 H(z)

    [总目录] (1) 简介 Intro (2) 傅里叶 Fourier 常用函数的傅里叶变换汇总 (3) LTI 系统 与 滤波器 二次抑制载波振幅调制接收系统 Python (4) 取样 Sampli ...

  9. 复变函数画图cosz图像_问两个高数和复变函数问题?1:cos(z)展开成级数?2:复变奇偶函数的图形有什......

    满意答案 口袋兔子耳朵长 2015.06.03 已帮助:3150万人 已回答:104万条 来自:阳光兔(北京)科技有限公司,是学大教育集团与奇虎360成立的合资公司,利用学大教育在内容和教育方面的资源 ...

最新文章

  1. C#模糊查询绑定datagridview
  2. Git分支合并:Merge、Rebase的选择
  3. CSS的优先级和继承性
  4. 使用gPXE网络启动引导ISO和安装ESXi5
  5. PL/SQL学习笔记-循环控制与顺序控制
  6. 阶乘的精确值大数阶乘
  7. python常用正则表达式_Python3常用正则表达式
  8. Jedis与Redisson对比有什么优缺点?
  9. Python入门——运行python的两种方式变量常量
  10. 【安装包】Dev-cpp
  11. Jenkins 构建触发器操作详解
  12. ef 子表和父表不同时保存_canon粉不懂镜头参数?我只能嘲笑你
  13. seqkit根据基因id_AgriSeq 靶向测序法基因分型技术
  14. OLAP工具在企业决策支持系统中的应用
  15. 苹果6访问限制密码4位_1Password for Mac(专业密码管理工具)
  16. 微信小程序自定义弹窗
  17. android gridview textview,gogo体育官方网站-gogo体育官方网站
  18. 2-5 CAD基础 打断(break)和合并(join)
  19. 什么是redux?redux概念及应用
  20. android学习(二十一) 下载数据减少电池损耗

热门文章

  1. 菱形开合的实现 IOS
  2. ansible2.7学习笔记系列
  3. 如何理解“跳出率”,它对SEO有什么影响?
  4. yii2手动添加图片处理插件Imagine
  5. LSASRV事件ID:40960
  6. 说说大型高并发高负载网站的系统架构(更新)
  7. 随机查询N条记录MySQL、SQLServer、Oracle、postgreSQL
  8. 详解Spring MVC 4之ViewResolver视图解析器
  9. 百度API地图 ,房产频道的标注方法
  10. Netty面试题 汇总