今天发现了阮一峰大牛的博客,收藏一下http://www.ruanyifeng.com/blog/,里边有好多文章值得读哦~~~~~
AMD(Asynchronus Module Definition)异步模块定义
语法:define(id ? , dependents ? , factory);
AMD 是 RequireJS 在推广过程中对模块定义的规范化产出。
AMD规范 https://github.com/amdjs/amdjs-api/wiki/AMD
cmd(Common Module Definition)模块定义
语法:一般是 define(factory)
CMD 是 SeaJS 在推广过程中对模块定义的规范化产出。
seaJS
sea.js 核心特征:
1. 遵循CMD规范,与NodeJS般的书写模块代码。
2. 依赖自动加载,配置清晰简洁。
兼容 Chrome 3+,Firefox 2+,Safari 3.2+,Opera 10+,IE 5.5+。
requireJS
官网 http://requirejs.org/API https://requirejs.org/docs/api.html/
两者的区别:
AMD是异步加载的,而CMD是同步加载的
例如:
我写了一个math.js
define(function(){
var add = function(a,b){
return a+b;
};
return {
add : add
}
});
用amd就是:
require(['math'],function(){
console.log(math.add(1+1));
});
用cmd就是:
var math = require('math');
math.add(1+1);