javascript-桥接模式

Posted 惊涛随笔

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了javascript-桥接模式相关的知识,希望对你有一定的参考价值。

桥接模式
 1.在系统沿着多个维度变化的同时,又不增加其复杂度并以达到解耦
 2.最主要特点:将实现层(如元素绑定的事件)与抽象层(如修饰页面UI逻辑)解耦分离,使两部分独立变化
 3.避免需求的改变造成对象内部的修改,体现了面向对象对拓展的开发及修改的关闭原则
 demo实例:创建一个对象桥接method,实现为对象拓展方法的功能

提取共同点(抽象层)

1         Object.prototype.addMethod = function(name,fn){
2             this[name] = fn;
3         }

创建类并实例化对象(实现层)

1         function Box(x,y,z){
2             this.x=x;
3             this.y=y;
4             this.z=z;
5         }
6     
7         var box=new Box(20,10,10);

为对象拓展方法(桥接方法)

1         box.addMethod("init",function(){
2             console.log("盒子的长度为:"+this.x+" , 宽度为:"+this.y+" , 高度为:"+this.z);
3         });
4         box.addMethod("getWidth",function(){
5             console.log(this.y);
6         });

测试代码

1         box.init();
2         box.getWidth();

控制台显示

 

以上是关于javascript-桥接模式的主要内容,如果未能解决你的问题,请参考以下文章

javascript-桥接模式

JavaScript设计模式样例九 —— 桥接模式

设计模式---桥接模式

javascript设计模式

设计模式桥接模式 ( 简介 | 适用场景 | 优缺点 | 代码示例 )

JavaScript设计模式