JavaScript订阅发布模式通过事件中心解耦对象,核心为on/emit/off三方法;发布者与订阅者仅依赖事件名,不直接调用,实现松耦合。

JavaScript 的订阅发布模式(Pub/Sub)本质是让对象之间不直接调用,而是通过一个“事件中心”中转消息。它不依赖具体对象实例,只认事件名和回调函数,自然就切断了模块间的硬依赖,实现松耦合。
核心结构:一个简易事件总线
不需要第三方库,几行代码就能搭出基础版:
- on(event, callback):注册监听,把回调存进对应事件的队列
- emit(event, ...args):触发事件,遍历该事件所有回调并执行
- off(event, callback):取消订阅,从队列里删掉指定回调(可选)
关键点在于:发布者不知道谁在听,订阅者也不知道谁在发——双方只跟事件总线打交道。
解耦是怎么发生的?看两个典型场景
比如用户登录成功后要刷新头像、更新权限、发欢迎通知:
标签: javascript java 回调函数 .net
版权声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。
还木有评论哦,快来抢沙发吧~