模块化

ES6的模块化的基本规则或特点:

1:每一个模块只加载一次, 每一个JS只执行一次, 如果下次再去加载同目录下同文件,直接从内存中读取。 一个模块就是一个单例,或者说就是一个对象;

2:每一个模块内声明的变量都是局部变量, 不会污染全局作用域;

3:模块内部的变量或者函数可以通过export导出;

4:一个模块可以导入别的模块
一、导入和导出

1.导出

image.png
导入:
image.png

2.只取需要的

image.png

3.导出数目太多时(无需一一对应)

image.png

4.推荐写法

image.png
image.png
image.png

1.什么是AMD、CMD、CommonJs?

AMD(异步模块定义)是RequireJS在推广过程中对模块定义的规范化产出,它是一个概念,而RequireJS实现这个概念。可以通过require引用加载。

RequireJS特点是依赖前置,即在定义前面通过数组的形式加载所有的依赖。
image.png

CMD(同步模块定义)是SeaJS在推广过程中对模块定义的规范化产出,SeaJS是CMD这个概念的实现。特点是就近依赖,即哪里用到依赖就在哪里引入,即用即返回(同步概念)

image.png

CommonJs规范通过module.exports定义,前端浏览器并不支持,推荐在后端nodeJs中使用

image.png


李娜
1 声望0 粉丝