2.9JavaScript引用类型之异步函数(Async/Await)

1.async

异步函数的定义:只需要首先在普通函数前添加一个 async 关键字,然后在函数体内至少包含一个 await 关键字即可。普通函数支持函数声明、函数表达式、箭头函数、立即调用的函数表达式和实例方法。

异步函数的返回值:总是 Promise 对象。

//函数声明
async function 函数名(形参) {
  await 表达式;
}
//函数表达式
//命名函数表达式
{ let | const } f = async function 函数名(形参) {
  await 表达式;
};
//匿名函数表达式
{ let | const } f = async function(形参) {
  await 表达式;
};
//箭头函数
{ let | const } f = async (形参) => {
  await 表达式;
};
//立即调用的函数表达式
//函数表达式方式(注意:不支持命名函数表达式)
//匿名函数表达式
(async function(形参) {
  await 表达式;
})(实参);
//箭头函数表达式方式
(async (形参) => {
  await 表达式;
})(实参);
//实例方法
class 类名 {
  async 方法名(形参) {
    await 表达式;
  }
}

2.await

await 表达式;
表达式await 表达式 的返回值
Thenable 对象兑现值(fulfillment value) 或 拒绝理由(rejection reason)
Promise 对象兑现值(fulfillment value) 或 拒绝理由(rejection reason)
任何值值本身

原创文章,作者:huoxiaoqiang,如若转载,请注明出处:https://www.huoxiaoqiang.com/javascript/javascriptlang/21545.html

(0)
huoxiaoqiang的头像huoxiaoqiang
上一篇 2020年9月8日 16:32
下一篇 2020年9月10日 14:52

相关推荐

  • 2.1JavaScript语言的ES模块(Module)

    ES 模块用于在浏览器环境和服务器环境中使用。 模块就是以 .js 为扩展名的 JavaScript 文件。 普通脚本文件内的顶级的成员对其它脚本文件来说是公开(public)的全局上下文,而模块文件内的顶级的模块成员对其它模块文件来说都是私有(private)的,所以首先需要在模块中将它们显式导出,然后在其它模块中显…

  • 2.3JavaScript原始类型之符号(Symbol)

    一个符号实例用于表示一个唯一的标识符。 1.创建符号实例 注意:符号实例不支持字面量创建方式。 注意:符号实例不支持 new Symbol() 创建方式。 Symbol() 函数可选地接受一个字符串实参,字符串实参仅仅作为对符号实例的描述,将来可以通过这个字符串实参来调试代码,不影响任何事情。 Symbol() 函数的…

  • 1.4JavaScript语言的类型(Type)

    JavaScript 语言有两种类型:原始类型(Primitive Type) 和 引用类型(Reference Type)。 原始类型包括:大整数类型、数值类型、布尔类型、字符串类型、符号类型、Undefined类型、Null类型。 引用类型包括:对象类型、函数类型、数组类型、映射类型、集合类型、期约类型。 1.大整…

发表回复

登录后才能评论