这个 异步函数
关键字可用于定义表达式内的异步函数。
还可以使用 异步函数
宣言 或 箭头语法 .
异步函数(param0){ 声明 } 异步函数(param0,param1){ 声明 } 异步函数(param0,param1,/*…,*/paramN){ 声明 } 异步函数名(param0){ 声明 } 异步函数名(param0,param1){ 声明 } 异步函数名称(param0,param1,/*…,*/paramN){ 声明 }
注: 安 表达式语句 不能以关键字开头 异步函数
以避免与 异步函数
宣言 . The异步函数
关键字仅在出现在无法接受语句的上下文中时才开始表达式。
名称
可选
函数名称。 可以省略,在这种情况下,函数是 匿名的 。该名称仅限于函数体。
参数N
可选
函数的形式参数的名称。 有关参数的语法,请参见 函数参考 .
声明
可选
构成函数体的语句。
安 异步函数
表达式与 异步函数
宣言 . The main difference between an异步函数
表达式和 异步函数
声明是 函数名称 ,在中可以省略 异步函数
要创建的表达式 匿名的 功能。 安 异步函数
表达式可以用作 IIFE公司 (立即调用函数表达式),定义后立即运行,允许您模拟 顶层等待 。另请参阅关于 功能 了解更多信息。
函数resolveAfter2Seconds(x){ return new Promise((resolve)=>{ 设置超时(()=>{ 解决(x); }, 2000); }); } //分配给变量的异步函数表达式 const add=异步函数(x){ const a=等待resolveAfter2Seconds(20); const b=等待2秒后解决(30); 返回x+a+b; }; 加上(10),然后(v)=>{ 控制台.log(v);// 4秒后打印60。 }); //用作IIFE的异步函数表达式 (异步函数(x){ const p1=2秒后解决(20); const p2=解析2秒后(30); 返回x+(等待p1)+(等待p2); })(10) 然后(v)=>{ 控制台.log(v);// 2秒后打印60。 });
BCD表仅在浏览器中加载 with JavaScript enabled. Enable JavaScript to view data.