多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
AMD规范是CommonJS模块规范的一个延伸,它的模块定义如下: ~~~ define(id?, dependencies?, factory); ~~~ 它的模块id和依赖是可选的,与Node模块相似的地方在于factory的内容就是实际代码的内容。下面的代码定义了一个简单的模块: ~~~ define(function(){ var exports = {}; exports.sayHello = function(){ console.log('Hello from module: ' + module.id); }; return exports; }); ~~~ 不同之处在于AMD模块需要用define来明确定义一个模块,而在Node实现中是隐式包装的,它们的目的是进行作用域隔离,仅在需要的时候被引入,避免掉过去那种通过全局变量或全局命名空间的方式,一面变量污染和不小心被修改。另一个区别则是内容需要通过返回的方式实现导出。