原理
(function (global,factory){
if (typeof exports === 'object' && typeof module !== 'undefined') {
//CommonJS、CMD规范检查
module.exports = factory();
} else if ( typeof define === 'function' && define.amd) {
//AMD规范检查
define(factory);
} else {
//浏览器注册全局对象
global.Jquery = factory();
}
})(this, (function () {
function say() {
console.log('hello world')
}
return {
say: say
}
}))
CommonJs
- module.exports
- require
- 加载模块是同步的,只要用于服务端node
- export import 是es6引入的方式
AMD
- 采用异步加载,适用于浏览器端
- define()
参考链接:javascript.ruanyifeng.com/nodejs/modu…