一、有什么意义。
1.有利于代码分离、解耦以及复用
2、团队并行开发
3、避免命名冲突
4、相互引用,按需加载
5、。。。
二、单例模式
1、利用闭包让函数私有化,避免变量污染,高级单例模式通过赋值给一个闭包,利用return暴露出去,之后供另外一闭包使用。(模块化基本使用闭包)
三、AMD(require.js异步加载模式)
1.AMD思想中基于define完成
define(function(){
function sum(...args){
let len = args.length()
if(len ===1){
return 1;
}
}
})
reduire([],[callback])
require(['js/lib/moduleA'],function(modleA){
return 2;
})
四、CMD(common.js)
1、require 导入模块 module.export 导出,CMD相对于AMD不需要前置依赖,是么时候用,是么时候导出。ES6模块和Common.js具有相同的机制。会把每次导入的模块结果赋值,在导入下一次的模块。