桥接模式(Bridge)

将抽象与其实现分离,以便两者可以独立变化。

// input device
class Mouse {
  constructor(output) {
    this.output = output;
  }
  click() {
    this.output.click();
  }
  move() {
    this.output.move();
  }
}

// output device
class Screen {
  construcotr() {}
  click() {
    console.log("screen click");
  }
  move() {
    console.log("screen move");
  }
}
export { Mouse, Screen };
const screen = new Screen();
const mouse = new Mouse(screen);
mouse.click();
mouse.move();