JavaScript设计模式--桥梁模式引入操作实例分析
网络编程 2021-07-04 15:03www.168986.cn编程入门
这篇文章主要介绍了JavaScript设计模式--桥梁模式,结合实例形式分析了JavaScript设计模式中桥梁模式应用操作技巧与注意事项,需要的朋友可以参考下
本文实例讲述了JavaScript设计模式--桥梁模式引入操作。分享给大家供大家参考,具体如下
1.使用情况
(1)事件的监控
#1,利用页面的button来选择宠物的例子(思路)
button.addEvent(element,"click",getPetByBame); function getPetByBame(e){ var id = this.id; asyncRquest("GET",'pet.action?id='+id,function(pet){ consols.log("request pet"+pet.resopnseText) }) }
#2,addEvent函数
/obj:需要增加事件的对象 type:事件名称 fn:执行事件的函数 / function addEvent(obj,type,fn){//addEvent为某个文档节点增加事件的方法 if(obj.addEventListener){//Mozilla中 obj.addEventListener(type,fn,false); }else if(obj.attachEvent){//IE中 obj["e"+type+fn] = fn; obj[type+fn] = function(){ obj["e"+type+fn]() } obj.attachEvent("on"+type,fn) } }
该种方式对于单元测试很难进行
改进为用简单的桥梁模式来解决
#1,后台中的api
function getPetByBame(id,callBack){ sayncRquest("GET",'url?id='+id,function(pet){ callBack(pet) })
#2,桥梁
//定义一个桥梁叫抽象和实现相互联系在一起 addEvent(element,"click",getPetByNameBridge) function getPetByNameBridge(){ getPetByBame(this.id,function(pet){ consols.log("request pet"+pet.resopnseText); }) }
这种做法使API和展现层完全分离,API和展现层可以灵活的变动。
(2)特权函数
//特权函数 var privilege=function () { //信息全封闭,内部业务逻辑复杂,做成一个特权函数,使调用方便 var plex=function (x,y) { //复杂的数学处理 } this.bridge=function () { //提供公共接口,返回一个单体 return { bridgeAdd:function () { //处理前 plex(1,2); //处理后 } } } }
(3)多个类的连接
//多个类的连接 var class1=function (a,b) { this.a=a; this.b=b; } var class2=function (e) { this.e=e; } //桥梁的连接 var bridgeClass=function () { this.one=new Class1(1,2); this.two=new Class1(1); } //目的两个类能独立的修改,而门面的意义在于调用方便
桥梁模式
感兴趣的朋友可以使用在线HTML/CSS/JavaScript代码运行工具测试上述代码运行效果。
更多关于JavaScript相关内容感兴趣的读者可查看本站专题《》、《》、《》、《》及《》
希望本文所述对大家JavaScript程序设计有所帮助。
编程语言
- 甘肃哪有关键词排名优化购买方式有哪些
- 甘肃SEO如何做网站优化
- 河南seo关键词优化怎么做电话营销
- 北京SEO优化如何做QQ群营销
- 来宾百度关键词排名:提升您网站曝光率的关键
- 卢龙关键词优化:提升您网站排名的策略与技巧
- 山东网站优化的注意事项有哪些
- 四川整站优化怎样提升在搜索引擎中的排名
- 疏附整站优化:提升网站性能与用户体验的全新
- 海南seo主要做什么工作售后服务要做到哪些
- 荣昌百度网站优化:提升您网站的搜索引擎排名
- 河北seo网站排名关键词优化如何做SEO
- 江西优化关键词排名推广售后保障一般有哪些
- 古浪SEO优化:提升你的网站可见性
- 西藏网站排名优化怎么把网站排名在百度首页
- 如何提升阳东百度快照排名:详尽指南