订阅者发布者模式
作者:互联网
简单总结一下 订阅者发布者模式:网上很多篇相关文章了啊,真的有必要写这篇幅只有几句话的水笔吗,你这混蛋不会是想让这寥寥数笔的博客显得不那么难看吧!
(清嗓)言归正传,js常见的设计模式之一的订阅者发布者模式,订阅者们订阅着他们想听的消息,当发布者发布相关消息时 订阅者就能收到消息 与其说订阅者发布者
我比较喜欢说回调函数、循环触发某一类的回调函数数组(我不希望听别人讲抽象术语),在代码实现上来讲可能更直接一点(不过嘛);我打算卖包子,并且规定客人预定时,需要说类型和要做的事(声明一个对象)
有人预定要红豆沙馅的(往对象添加一个key为红豆沙馅,value为[]数组则装一些客人会对红豆沙这类包子做的事 ps:什么!你说红豆沙包除了吃还能怎么样)
客人们纷纷预订下单,我感到很欣慰,于是我开始归类下单的类型,把客人对相同的馅要做的事归类(大概数据会变成
{
redBean:[callBack1(),callBack2()],
yellowBean:[callBack3(),callBack4()],
}
这相当于是在addEventListener里注册的事件监听了:如click),我的手艺炉火纯青 终于这时候第一个包子出炉了,我对外发布一条消息:我做出的是红豆沙包,并且送一包番茄酱(是的你不喜欢吃也没办法送你其他)相关的客人
请就位,排队完成约定要做的事(不要问我一个包子怎么够这么多人吃;这应该就是发布者发布消息,订阅者收到消息;代码上就是取出该类型的回调函数数组,循环触发调用,顺便回调函数的参数应该是"包子和番茄酱")
标签:订阅,豆沙,模式,消息,发布者,包子,客人 来源: https://www.cnblogs.com/zhenxiang/p/13157910.html