侧边栏壁纸
博主头像
落叶人生博主等级

走进秋风,寻找秋天的落叶

  • 累计撰写 130562 篇文章
  • 累计创建 28 个标签
  • 累计收到 9 条评论
标签搜索

目 录CONTENT

文章目录

javascript的发布/订阅模式(三)

2024-05-12 星期日 / 0 评论 / 0 点赞 / 87 阅读 / 1576 字

发布—订阅模式又叫观察者模式(也有人硬是区分开,不过思想基本类似),它定义对象间的一种一对多的依赖关系,当一个对象的状态发生了改变时,所有依赖于它的对象都将得到通知。在javascript开发中,我们

发布—订阅模式又叫观察者模式(也有人硬是区分开,不过思想基本类似它定义对象间的一种一对多的依赖关系,当一个对象的状态发生了改变时,所有依赖于它的对象都将得到通知。在javascript开发中,我们一般都用事件模型来替代传统的发布—订阅模式。

用过javascript中的事件绑定就是典型的该模式。

document.body.addEventListener(‘click’,function(){    alert(2);  },false);  document.body.click(); 

例子:小明去售楼中心问房价,售楼中心还没开盘,说让他登记联系方式等开盘,告诉他,那么小丽去了,也是这样的流程。这就是该模式。

var salesCenter = {    //售楼中心    customerList:[], //用户登记手册        addCustomer: function(fn){      this.customerList.push(fn);            },    noticeCustomer: function(){      for(var i=0, fn; fn = this.customerList[i++];){          fn.apply(this, arguments);      }    }}salesCenter.addCustomer(function(){    //登记一个动作    console.log('我是小明');})salesCenter.addCustomer(function(){    //登记一个动作    console.log('我是小丽');})salesCenter.noticeCustomer()  //通知他们过来

完整的还有一个remove动作,删除登记用户,那就是作业了,自己补充。

广告 广告

评论区