JS:前端模块化(简述)


模块化主要是用来抽离公共代码,提高代码复用率,隔离作用域,避免变量冲突等。通常一个文件就是一个模块,有自己的作用域,只向外暴露特定的变量和函数。目前流行的模块化规范有AMD、CMD、CommonJS以及ES6的模块系统。模块化的开发方式可以方便进行代码的管理。
JS:前端模块化(简述)


AMD

(异步模块定义规范) : RequireJS 异步加载,依赖前置,提前执行,特点:依赖必须提前声明好。


CMD

(通用模块定义规范) : SeaJS 同步加载,依赖就近,延迟执行使用seaJS 来编写模块化,特点:支持动态引入依赖文件。


CommonJS

nodejs 中自带的模块化。CommonJS主要用于服务器端,NodeJS采用的就是CommonJS,每个文件会被当做一个模块,使用exports和require关键字进行导出和加载,但由于其是同步加载,故不适用于客户端;


ES Modules

ES6 引入的模块化,支持import 来引入另一个 js 。


— The end —