CommonJS、AMD、UMD、ES Module傻傻分不清楚
背景
JavaScript 程序本来很小——在早期,它们大多被用来执行独立的脚本任务,在你的 web 页面需要的地方提供一定交互,所以一般不需要多大的脚本。过了几年,我们现在有了运行大量 JavaScript 脚本的复杂程序,还有一些被用在其他环境(例如 Node.js)。
因此,近年来,有必要开始考虑提供一种将 JavaScript 程序拆分为可按需导入的单独模块的机制。
本文要介绍的CommonJS、AMD、UMD、ES Module其实都是 JavaScript 中的 模块规范。
CommonJS
简介
CommonJS的模块规范如今被广泛使用,特别是用于使用Node.js进行的服务器端 JavaScript 编程。也用于浏览器端JavaScript的开发,但由于浏览器不支持CommonJS,代码必须用转译器(比如:browserify)打包。- 该项目由Mozilla工程师 Kevin Dangoor 于 2009 年 1 月启动,最初命名为
ServerJS。 - 2009 年 8 月,该项目更名为
CommonJS,以展示API更广泛的适用性。
使用方法
1 | //------ a.js ------ |