打赏

Async Await

本文参考自:https://www.cnblogs.com/YMaster/p/6920441.html

async/await 规则:

  1. async 表示这是一个 async 函数,而 await 只能在这个函数里面使用。

  2. await 表示在这里等待 await 后面的操作执行完毕,再执行下一句代码。

  3. await 后面紧跟着的最好是一个耗时的操作或者是一个异步操作。

 

使用注意事项:

1、处理异常

await命令后面的Promise对象,运行结果可能是rejected,所以最好把await命令放在try...catch代码块中。

async function myFunction() {
  try {
    await somethingThatReturnsAPromise();
  } catch (err) {
    console.log(err);
  }
}

或者:

async function myFunction() {
  await somethingThatReturnsAPromise()
  .catch(function (err) {
    console.log(err);
  });
}

2、并发请求

多个await命令后面的异步操作,如果不存在继发关系,最好让它们同时触发。

let [foo, bar] = await Promise.all([getFoo(), getBar()]);

 3、async和await 返回的都是Promise对象

async函数完全可以看作多个异步操作,包装成的一个 Promise 对象,而await命令就是内部then命令的语法糖。

 

4、async是promise的语法糖。

 

5、try catch可以捕获到

 

 

posted @ 2018-11-09 17:52  孟繁贵  阅读(208)  评论(0编辑  收藏  举报
TOP