async

129 阅读3分钟

async函数是使用async关键字声明的函数。async函数是AsyncFunction构造函数的实例,并且其中允许使用await关键字。async和await关键字让我们可以用一种更简洁的方式写出基于Promise的异步行为,而无需刻意地链式调用promise。
async函数还可以被作为表达式来定义:

image.png

  • WXS 模块

WXS代码可以编写在wxml文件中的wxs标签内,或以.wxs为后缀名的文件内。

  • 模块

每一个.wxs文件和wxs标签都是一个单独的模块。 每个模块都有自己独立的作用域。即在一个模块里面定义的变量与函数,默认为私有的,对其他模块不可见。一个模块要想对外暴露其内部的私有变量与函数,只能通过module.exports实现。

image.png

一、export 与 import的基本用法:

1、模块导入导出各种类型的变量,如字符串,数值,函数,类。

2、导出的函数声明与类声明必须要有名称(export default 命令另外考虑)。 

3、不仅能导出声明还能导出引用(例如函数)。

4、export 命令可以出现在模块的任何位置,但必需处于模块顶层。

5、import 命令会提升到整个模块的头部,首先执行。


二、as 的用法:

1、export 命令导出的接口名称,须和模块内部的变量有一一对应关系。

2、导入的变量名,须和导出的接口名称相同,即顺序可以不一致。

3、不同模块导出接口名称命名重复, 使用 as 重新定义变量名。


三、import 命令的特点:

1、只读属性:不允许在加载模块的脚本里面,改写接口的引用指向,即可以改写 import 变量类型为对象的属性值,不能改写 import 变量类型为基本类型的值。

2、单例模式:多次重复执行同一句 import 语句,那么只会执行一次,而不会执行多次。import 同一模块,声明不同接口引用,会声明对应变量,但只执行一次 import 。

3、静态执行特性:import 是静态执行,所以不能使用表达式和变量。


四、export default 命令:

1、在一个文件或模块中,export、import 可以有多个,export default 仅有一个。

2、export default 中的 default 是对应的导出接口变量。

3、通过 export 方式导出,在导入时要加{ },export default 则不需要。

4、export default 向外暴露的成员,可以使用任意变量来接收。


五、复合使用:

export 与 import 可以在同一模块使用,使用特点:

1、可以将导出接口改名,包括 default。

2、复合使用 export 与 import ,也可以导出全部,当前模块导出的接口会覆盖继承导出的。

六、字符串补全方法:

padStart:返回新的字符串,表示用参数字符串从头部(左侧)补全原字符串。

padEnd:返回新的字符串,表示用参数字符串从尾部(右侧)补全原字符串。

以上两个方法接受两个参数,第一个参数是指定生成的字符串的最小长度,第二个参数是用来补全的字符串。如果没有指定第二个参数,默认用空格填充。