js设计模式-适配器模式

Posted 腾格里

tags:

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

说明:适配器模式表面上看起来像门面模式。它们都要对别的对象进行包装并改变其呈现的接口。但是两者的差别在于它们如何改变接口。门面元素展现的是一个简化的接口,它并不提供额外的选择,而且有时为了方便完成常见任务它还会做出一些假定。而适配器则要把一个接口转换为另外一个接口,它并不会滤除某些功能,也不会简化接口

适用场景:适用于客户系统期待的接口与现有API提供的接口不兼容这种场合。它只能用来协调语法上的差异问题。适配器所适配的两个方法执行的应该是类似的任务,否则的话它就解决不了问题。

例子:如果你有一个具有3个字符串参数的函数,但客户系统拥有的却是一个包含三个字符串元素的数组,此时就可以用一个适配器来衔接二者。

//字符串对象
var clientObj = {
    str1:"foo",
    str2:"bar",
    str3:"baz"
};
//接口函数
function interfaceFn(str1,str2,str3){
    //........
}
//适配器函数
function clientToInterfaceAdapter(o){
    interfaceFn(o.str1,o.str2,o.str3);
}

 

以上是关于js设计模式-适配器模式的主要内容,如果未能解决你的问题,请参考以下文章

js设计模式-适配器模式

JS设计模式(14)适配器模式

JS设计模式:工厂模式单例模式和适配器模式

js适配器模式

需要从寻呼机适配器识别当前视图片段

js28--适配器模式