js中发布订阅模式和常见的回调函数有什么区别?

雾秋
  • 1.3k

如题。
感觉发布订阅就是多写几次回调,或者说把订阅的函数都集合在一个回调函数中。

评论
阅读 282
1 个回答
✓ 已被采纳

发布-订阅确实要多写几次回调,也确实把订阅的函数都集中处理了。
但是使用回调-订阅的时候通常也是写回调函数,如果你不去深究它的设计思想的话,你就发现它和 addEventLisener 没有很大的区别。
发布-订阅的设计思想就俩字解耦,就像电话线路的设计一样。使用 addEventListener 就像专线电话一样,你家里必须把 11012012315……还有你亲朋好友都连起来,不然就没法聊天,你可以想一下照这样做你家里得连多少条电话线,这叫耦合;但是使用一个公共的 eventBus 来实现 发布-订阅 之后,就像使用公共线路一样,只要双方约定一个号码就可以通话了,双方只与公共线路耦合,彼此是解耦的。

撰写回答

登录后参与交流、获取后续更新提醒

宣传栏