在函数式编程中,观察者设计模式是非常有必要的,尽管在JS里到处都充斥着观察者模式(Observer Pattern),但我们仍然有必要去了解它。以便实现自己的观察者模式,用于更复杂的应用场景。
其实要实现观察者模式实在是很简单。
现在我们回顾一下我们遇到过的观察者模式,最常见的应该是在前端领域中的DOM事件监听。
JS允许我们用两种形式绑定DOM事件,一种为钩子捕获,另一种为事件监听,今天我们主要的关注点在后者,如果还不了解钩子函数和回调函数的朋友可以去看一下我写的另一篇博文钩子函数与回调函数的区别
下面来看一个简单的DOM事件的监听
//我们假设btn 就是一个button DOM对象的引用
btn.on('click',() => {
console.log('我被点击了');
});
这就是一个简单的观察者模式的例子,相信大家对这种监听机制早就已经看的快烂了,写起来也是特别顺手,它其实是当用户鼠标点击到这个D