js设计模式——8.中介者模式

/*js设计模式——中介者模式*/class A {constructor() {this.number = 0;}setNumber(num, m) {this.number = num;if (m) {m.setB();}}
}class B {constructor() {this.number = 0;}setNumber(num, m) {this.number = num;if (m) {m.setA();}}
}// 中介者
class MediatorDome {constructor(a, b) {this.a = a;this.b = b;}setB() {let number = this.a.number;this.b.setNumber(number * 100);}setA() {let number = this.b.number;this.b.setNumber(number / 100);}
}// 测试
let a = new A();
let b = new B();
let m = new MediatorDome(a, b);
a.setNumber(100, m);
console.log(a.number, b.number);
a.setNumber(100, m);
console.log(a.number, b.number);

 

转载于:https://www.cnblogs.com/hpx2020/p/10731112.html

js设计模式——8.中介者模式相关推荐

  1. js中的设计模式之中介者模式

    Js中的中介者模式 定义 定义一个中介者对象来封装一系列对象的交互,把一批原来交互关系复杂的对象转换成一组松散耦合的对象,使他们变得易于维护和修改. 详细描述 在我们开发中经常会将对象拆分为更小的颗粒 ...

  2. 乐在其中设计模式(C#) - 中介者模式(Mediator Pattern)

    [索引页] [源码下载] 乐在其中设计模式(C#) - 中介者模式(Mediator Pattern) 作者:webabcd 介绍 用一个中介对象来封装一系列的对象交互.中介者使各对象不需要显式地相互 ...

  3. 设计模式(中介者模式-对象去耦)

    声明:本系列文章内容摘自<iOS设计模式> 中介者模式 用一个对象来封装一系列对象的交互方式.中介者使个对象不需要显式地相互调用,从而使其耦合松散,而且可以独立地改变它们之间的交互. 何时 ...

  4. Java设计模式之中介者模式(UML类图分析+代码详解)

    大家好,我是一名在算法之路上不断前进的小小程序猿!体会算法之美,领悟算法的智慧~ 希望各位博友走过路过可以给我点个免费的赞,你们的支持是我不断前进的动力!! 加油吧!未来可期!! 本文将介绍java设 ...

  5. 软件设计模式之中介者模式实验

    软件设计模式之中介者模式实验 一.实验目的 掌握软件设计模式中的中介者模式,能够用中介者模式编写程序,解决实际问题. 二.实验内容与要求 内容:有个租房中介为房主和租赁人提供租房服务,请用中介者模式对 ...

  6. 走穿java23种设计模式--18中介者模式详解

    走穿java23种设计模式–18中介者模式详解 中介者模式也称调停者模式,是一种比较简单的模式. 一.中介者模式的现实场景 蔡良因为上次表白时对方只看重他的物质方面,所以他对女朋友这个问题有点失望.因 ...

  7. 设计模式之中介者模式(Mediator)摘录

    23种GOF设计模式一般分为三大类:创建型模式.结构型模式.行为模式. 创建型模式抽象了实例化过程,它们帮助一个系统独立于如何创建.组合和表示它的那些对象.一个类创建型模式使用继承改变被实例化的类,而 ...

  8. 设计模式复习-中介者模式

    #pragma once #include "stdafx.h" #include<map> #include<set> #include<strin ...

  9. 【设计模式】中介者模式 ( 简介 | 适用场景 | 优缺点 | 代码示例 )

    文章目录 一.中介者模式简介 二.中介者模式适用场景 三.中介者模式优缺点 四.中介者模式 与 观察者模式 五.中介者模式 代码示例 1.聊天室 2.用户 3.运行实例 一.中介者模式简介 中介者模式 ...

  10. 再起航,我的学习笔记之JavaScript设计模式23(中介者模式)

    中介者模式 概念介绍 中介者模式(Mediator):通过中介者对象封装一系列对象之间的交互,使对象之间不再相互引用降低他们之间的耦合,有时中介者对象也可以改变对象之间的交互. 创建一个中介 中介者模 ...

最新文章

  1. 程序员怎么赚更多的钱_自由职业技巧:如何感到更加自信和赚更多钱
  2. R语言计算回归模型每个样本(观察、observation、sample)的DFBETAS值实战:每一个样本对给定系数的估计有多大的影响
  3. struts2 jquery ajax 局部刷新遇到的各种问题
  4. Angular 下的 directive (part 2)
  5. 详解void 0与undefined区别
  6. 误落迷宫2(BFS)
  7. [iPhone开发]UIWebview 嵌入 UITableview
  8. ie11加载java插件_IE浏览器中ActiveX插件的使用
  9. php制作学生卡片,PHP基础案例一:展示学生资料卡
  10. 关于如何收集,标准化和集中化处理Golang日志的一些建议
  11. 误区30日谈21-24
  12. 如何使用libxml2库[转]
  13. JavaScript中的流程控制
  14. 实验三 函数的最值与导数
  15. 读Zepto源码之Touch模块
  16. php命令行路径,命令行 – PHP命令行php.ini路径错误
  17. 卸载网易邮箱大师邮件从服务器删除,如何卸载网易邮箱大师 网易邮箱大师卸载教程...
  18. 研究:多因素影响粮食安全 应早做规划避免粮食短缺
  19. 百度前端技术体系——百度EFE(Excellent FrontEnd)技术体系
  20. 带你玩东方外传系列一 ~ 十游戏链接

热门文章

  1. request库的基本使用
  2. HTML学习---HTML状态码
  3. webpack官方文档分析(一):安装
  4. 使用freetype来显示中文汉字和英文字符
  5. C语言课程学习的总结
  6. Redis 快速入门 -- Redis 命令(6)
  7. 创建Web Service后,客户端不能调用的解决办法(提示:此方法只有在本地才可以使用)...
  8. 【转】SQL Server联机丛书:存储过程及其创建
  9. (转)uml 交互视图
  10. Vue指令之v-on