观察者模式的定义

在对象之间定义了一对多的依赖,这样一来,当一个对象改变状态,依赖它的对象会收到通知并自动更新。
其实就是发布订阅模式,发布者发布信息,订阅者获取信息,订阅了就能收到信息,没订阅就收不到信息。

使用场景例子

有一个微信公众号,你关注它了,它就给推送消息,你取消就不会推送。

前端例子

1、Vue框架中的MVVM模式,通过观察者模式结合Object.defineProperty中get来收集依赖,再通过set去通知依赖。
2、JS中绑定了事件,并触发。
3、Promise,调取成功后触发和失败触发(then方法,catch方法)
等等太多了

如何去使用观察者模式?

首先观察者模式写法多种多样,但是核心思想没有改变,它强调的是(what?监听的依赖)(how?依赖如何触发)
那么有了这个,就随便可以去做文章。