首页前端开发HTML异步函数的实例分享

异步函数的实例分享

时间2024-05-08 20:36:03发布访客分类HTML浏览60
导读: 异步函数 异步函数(async function)是 ECMAScript 2017 (ECMA-262 标准的规范,几乎被所有浏览器所支持,除了 Internet Explorer。 在 Promise...
  异步函数      异步函数(async function)是 ECMAScript 2017 (ECMA-262) 标准的规范,几乎被所有浏览器所支持,除了 Internet Explorer。      在 Promise 中我们编写过一个 Promise 函数:      实例      function print(delay, message) {      return new Promise(function (resolve, reject) {      setTimeout(function () {      console.log(message);      resolve();      } , delay);      } );      }      然后用不同的时间间隔输出了三行文本:      实例      print(1000, "First").then(function () {      return print(4000, "Second");      } ).then(function () {      print(3000, "Third");      } );      我们可以将这段代码变得更好看:      实例      async function asyncFunc() {      await print(1000, "First");      await print(4000, "Second");      await print(3000, "Third");      }      asyncFunc();      哈!这岂不是将异步操作变得像同步操作一样容易了吗!      这次的回答是肯定的,异步函数 async function 中可以使用 await 指令,await 指令后必须跟着一个 Promise,异步函数会在这个 Promise 运行中暂停,直到其运行结束再继续运行。      异步函数实际上原理与 Promise 原生 API 的机制是一模一样的,只不过更便于程序员阅读。      处理异常的机制将用 try-catch 块实现:      实例      async function asyncFunc() {      try {      await new Promise(function (resolve, reject) {      throw "Some error"; // 或者 reject("Some error")      } );      } catch (err) {      console.log(err);      // 会输出 Some error      }      }      asyncFunc();      如果 Promise 有一个正常的返回值,await 语句也会返回它:      实例      async function asyncFunc() {      let value = await new Promise(      function (resolve, reject) {      resolve("Return value");      }      );      console.log(value);      }      asyncFunc();      程序会输出:      Return value

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: 异步函数的实例分享
本文地址: https://pptw.com/jishu/655751.html
Flex 布局的元素的基本概念 JavaScript变量名的代码规范

游客 回复需填写必要信息