介绍
适配器模式,又称包装器模式,将一个类的接口转化为用户需要的另一个接口,解决类之间接口不兼容的问题。类适配器使用继承关系来实现,而对象适配器使用组合关系来实现
代码
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42
| class Target { request() { return "Target: The default target's behavior."; } }
class Adaptee { specificRequest() { return ".eetpadA eht fo roivaheb laicepS"; } }
class Adapter extends Adaptee { request() { const result = this.specificRequest().split('').reverse().join(''); return `Adapter: (TRANSLATED) ${result}`; } }
class ObjAdapter { constructor(adaptee) { this.adaptee = adaptee; }
request() { let result = this.adaptee.specificRequest().split("").reverse().join(""); return `Adapter: (TRANSLATED) ${result}`; } }
let target = new Target(); let adapter = new Adapter();
let adaptee = new Adaptee(); let objAdapter = new ObjAdapter(adaptee); console.log(target.request()); console.log(adapter.request()); console.log(objAdapter.request());
|