JS模块规范整理

303 阅读1分钟
模块规范 默认面向环境与相互引用 加载方式 关键语法 常见格式转换工具 规范实现
ES6模块 浏览器环境,nodeJS可引入ES6模块
CommonJs可加载ES6
ES6可加载CommonJS模块
异步加载(动态引用) import export Babel,ES6 module transpiler,SystemJs转ES5
CommonJS nodeJs 同步加载(值的引用) 模块引用:require 模块定义:exports 模块标识:module browserify,tiny-browser-require ->兼容浏览器
AMD 浏览器端(向nodeJs靠近) 异步加载(依赖模块预执行) require([module], callback);define([],function()) require.config()配置不兼容模块 require.js,curl.js
CMD 浏览器端(向nodeJs靠近) 异步加载(依赖模块懒执行) define(function(require,exports,module){...}) seajs
UMD

参考资料

js模块化编程之彻底弄懂CommonJS和AMD/CMD!

阮一峰 ECMAScript 6 入门 Module的加载实现!

有不准确或错误之处,望不吝赐教,共同进步