JS模块化
Opened this issue · 1 comments
LadderLay commented
JS模块发展史
ES6之前
使用对象、闭包、立即执行函数实现模块
函数模块
模块模块
函数扩展模块,对象扩展接口
AMD & CommonJS
AMD基于浏览器,CommonJS面向通用JS环境。
AMD的优点:
自动处理依赖,无需考虑模块导入的顺序;异步加载模块从而避免阻塞;同一文件内可以定义多个模块。
CommonJS:
一个文件就是一个模块(基于文件)
同步引入模块
拓展:UMD
ES6模块
结合了CommonJS和AMD的优点:基于文件;支持异步模块加载。
export
import
//导入
import...
//导出
export...