当前位置: 首页 > news >正文

绿色建筑设计郑州seo代理商

绿色建筑设计,郑州seo代理商,织梦做视频网站可以吗,幼儿园主题网络图设计宝宝的家文章目录 前言介绍实现优缺点应用场景后言 前言 hello world欢迎来到前端的新世界 😜当前文章系列专栏:前端设计模式 🐱‍👓博主在前端领域还有很多知识和技术需要掌握,正在不断努力填补技术短板。(如果出现错误&#…

文章目录

  • 前言
  • 介绍
  • 实现
  • 优缺点
  • 应用场景
  • 后言

前言

hello world欢迎来到前端的新世界


😜当前文章系列专栏:前端设计模式
🐱‍👓博主在前端领域还有很多知识和技术需要掌握,正在不断努力填补技术短板。(如果出现错误,感谢大家指出)🌹
💖感谢大家支持!您的观看就是作者创作的动力

介绍

观察者模式又称发布-订阅模式(Publish/Subscribe Pattern),是我们经常接触到的设计模式,日常生活中的应用也比比皆是,比如你订阅了某个博主的频道,当有内容更新时会收到推送;又比如JavaScript中的事件订阅响应机制。观察者模式的思想用一句话描述就是:被观察对象(subject)维护一组观察者(observer),当被观察对象状态改变时,通过调用观察者的某个方法将这些变化通知到观察者。

实现

观察者模式中Subject对象一般需要实现以下API:

  • subscribe(): 接收一个观察者observer对象,使其订阅自己
  • unsubscribe(): 接收一个观察者observer对象,使其取消订阅自己
  • fire(): 触发事件,通知到所有观察者
// 被观察者
function Subject() {this.observers = [];
}Subject.prototype = {// 订阅subscribe: function (observer) {this.observers.push(observer);},// 取消订阅`在这里插入代码片`unsubscribe: function (observerToRemove) {this.observers = this.observers.filter(observer => {return observer !== observerToRemove;})},// 事件触发fire: function () {this.observers.forEach(observer => {observer.call();});}
}

验证是否订阅成功

const subject = new Subject();function observer1() {console.log('Observer 1 Firing!');
}function observer2() {console.log('Observer 2 Firing!');
}subject.subscribe(observer1);
subject.subscribe(observer2);
subject.fire();//输出:
Observer 1 Firing! 
Observer 2 Firing!

验证一下取消订阅是否成功:

subject.unsubscribe(observer2);
subject.fire();//输出:
Observer 1 Firing!

优缺点

优点

  • 支持简单的广播通信,自动通知所有已经订阅过的对象
  • 目标对象与观察者之间的抽象耦合关系能单独扩展以及重用
  • 增加了灵活性
  • 观察者模式所做的工作就是在解耦,让耦合的双方都依赖于抽象,而不是依赖于具体。从而使得各自的变化都不会影响到另一边的变化。

缺点

过度使用会导致对象与对象之间的联系弱化,会导致程序难以跟踪维护和理解

应用场景

  • DOM事件
document.body.addEventListener('click', function() {console.log('hello world!');
});
document.body.click()

后言

创作不易,要是本文章对广大读者有那么一点点帮助 不妨三连支持一下,您的鼓励就是博主创作的动力

http://www.hotlads.com/news/6481.html

相关文章:

  • 装修网站开发kj6699的seo综合查询
  • 北京java网站开发公司2345网址大全浏览器
  • 杭州做网站要多少钱武汉网站seo服务
  • 做电影网站都需要什么手续上海seo服务外包公司
  • php网站建设论文答辩搜索热词排行榜
  • 网站百度推广怎么做中关村在线app
  • 深圳广科网站建设适合35岁女人的培训班
  • 企业网站建设的心得网上软文发稿平台
  • 网站建设公司电话咨询提升关键词排名有哪些方法
  • 响应式网站应该怎么做佛山网站优化排名推广
  • 大众点评如何做团购网站seo推广软件
  • 做网站好听的域名自动的网站设计制作
  • 做网站打广告图片素材开网站怎么开
  • 桂林旅游网站国外网站seo免费
  • 如何在网站做淘宝页面全能搜
  • 自己做网站模版百度站长工具官网
  • 泰安网站建设定制公司百度数据研究中心
  • 舟山 做企业网站承接网络推广外包业务
  • 网站服务器环境不支持mysql数据库合肥网络推广服务
  • 望京做网站的公司整站优化seo平台
  • 郓城网站建设电话网络营销案例分析ppt
  • 高定网站百度品牌广告多少钱
  • 沈阳网站开发程序员工资海外网站seo优化
  • 抖音网红代运营seo是什么东西
  • 电力建设监理招聘网站网站销售怎么推广
  • 海口网站建设方案报价南宁seo网络优化公司
  • 怎么仿网站链接集合竞价口诀背熟6句
  • 国际交友网站怎么建设seo网站页面优化包含
  • 网站办公室ks刷粉网站推广马上刷
  • 网站盈利模式google seo是什么啊