请选择 进入手机版 | 继续访问电脑版
猿人社区
查看: 25|回复: 0

[干货] ECMAScript2015 ES6 async await

[复制链接]

88

主题

88

帖子

429

积分

管理员

Rank: 9Rank: 9Rank: 9

注册时间
2018-7-24
最后登录
2018-12-8
在线时间
68 小时
威望
18
金钱
293
贡献
12
发表于 2018-11-30 14:35:00 | 显示全部楼层 |阅读模式
async function 声明用于定义一个返回 AsyncFunction 对象的异步函数。异步函数是指通过事件循环异步执行的函数,它会通过一个隐式的 Promise 返回其结果。但是如果你的代码使用了异步函数,它的语法和结构会更像是标准的同步函数。

你还可以使用 异步函数表达式 来定义异步函数。
async function name([param[, param[, ... param]]]) { statements }
name函数名称。param要传递给函数的参数的名称。statements函数体语句。
返回值:一个返回的Promise对象会以async function的返回值进行解析(resolved),或者以该函数抛出的异常进行回绝(rejected)

MDN的例子:
  1. function resolveAfter2Seconds() {
  2.   return new Promise(resolve => {
  3.     setTimeout(() => {
  4.       resolve('resolved');
  5.     }, 2000);
  6.   });
  7. }

  8. async function asyncCall() {
  9.   console.log('calling');
  10.   var result = await resolveAfter2Seconds();
  11.   console.log(result);
  12.   // expected output: 'resolved'
  13. }

  14. asyncCall();
复制代码



您需要登录后才可以回帖 登录 | 入住社区

本版积分规则

Archiver|手机版|小黑屋|Deaf community

GMT+8, 2018-12-12 20:29 , Processed in 0.053087 second(s), 18 queries .

Powered by Discuz! X3.4© 2001-2017 Comsenz Inc. Template design by Penday

快速回复 返回顶部 返回列表