SOURCE

class Observer {
  constructor() {
  }

  update() {
    console.log('observer fired');
  }
}

class Observable {
  constructor() {
    this.observers = [];
  }

  addObserver(observer) {
    this.observers.push(observer);
  }

  remove(observer) {
    this.observers.splice(this.observers.indexOf(observer),1);
  }

  notify() {
    this.observers.forEach(x => x.update());
  }
}

const observer = new Observer();
const observable = new Observable();
observable.addObserver(observer);
observable.notify();
console 命令行工具 X clear

                    
>
console