var alert1={write:function(){alert(1)}};
var alert2={write:function(){alert(2)}};
function alert(){
dosomething();
alert1.write();
}
alert();
function alert(){
dosomething();
alert2.write();
}
alert();
如果想完成先dosomething 再执行alert1或者alert2的方法,不进行注入,那么代码就重复了,通过传入参数的方式来复用代码,
function alert(alert){
dosomething();
alert.write();
}
alert(alert1);;
alert(alert2);
模块内的函数,需要有一个依赖,这个依赖要通过参数注入进去,就叫依赖注入。。。。不知道为啥起这个名字,强行解释。。。
通过依赖注入,减低模块对外部对象的依赖,使耦合变得松散。