ES6
//导出:
export { }
export default = { }
//导入:
import { } from ..
Commonjs:(使用于服务器端,同步加载)
模块定义与加载:
// foo.js
module.exports = function(x) {
console.log(x);
};
// main.js
var foo = require("./foo");
foo("Hi");
AMD:(适用于浏览器端,异步加载)(require.js)
//模块的加载:
// main.js
require(['moduleA', 'moduleB', 'moduleC'], function (moduleA, moduleB, moduleC){
// some code here
});
//模块加载时指定模块路径
require.config({
baseUrl: "js/lib", //指定模块路径的根路径
paths: {
"jquery": "jquery.min", //模块名称与模块路径对应
"underscore": "underscore.min",
"backbone": "backbone.min"
}
});
//模块的定义
//此模块的定义又依赖其他模块时可在define中加第一个参数,如没有可不加
define(['myLib'], function(myLib){
function foo(){
myLib.doSomething();
}
return {
foo : foo
};
});