模式作用:
1,远程代理(一个对象将不同空间的对象进行局部代理)
2,虚拟代理(根据需要创建开销很大的对象 如渲染网页暂时用占位代替真图)
3,安全代理(控制真实对象的访问权限)
4,智能指引(调用对象代理处理另外一些事情如垃圾回收机制)
注意事项:
1,远程代理(一个对象将不同空间的对象进行局部代理)
2,虚拟代理(根据需要创建开销很大的对象 如渲染网页暂时用占位代替真图)
3,安全代理(控制真实对象的访问权限)
4,智能指引(调用对象代理处理另外一些事情如垃圾回收机制)
注意事项:
1,不能滥用代理,有时候仅仅是给代码增加复杂度
<meta charset="utf-8">
<script type="text/javascript">
// 代理模式需要三方
// 1.买家
function maijia(){
this.name="小明";
}
// 2.中介 卖方
function zhongjie(){
}
zhongjie.prototype.maifang=function(){
new fangdong(new maijia()).maifang("20万");
}
// 3.房东
function fangdong(maijia){
this.maijia_name=maijia.name;
this.maifang=function(money){
alert("收到了来自【"+this.maijia_name+"】"+money+"人民币");
}
}
(new zhongjie).maifang();
</script>