1. 为什么要使用模块化:
- 可维护性
- 命名空间独立
- 可复用性高
2. 模块化规范:
- CommonJS
- AMD
- CMD
- UMD
- Modules(ES6)
3. 模块化的定义:
- 可以理解成实现特定功能的相互独立的一组方法
4. CommonJS:
- 通过module.exports语句导出对象为模块,通过require语句引入
5. AMD(Asynchromous Module Definition):
- 特点:提倡依赖前置,在定义模块的时候就要声明其依赖的模块
6. CMD(Common Module Definition):
- 提倡就近依赖(按需加载)用到那个模块再去require
7. UMD
- AMD和CommonJS结合,跨平台的解决方案,UMD先判断是否支持Node.js的模块(exports)是否存在,存在则使用Node.js模块模式,再判断是否支持AMD(define)是否存在,存在则使用AMD方式加载模块
8. Module
- 原生JS(ES6)解决方案