设计模式:一种编程思想,这种思想会解决一类问题

  • 单例设计模式
  • 工厂设计模式
  • 构造函数设计模式
  • 发布订阅设计模式:可以把未来要处理的事情,有效的进行管理和依次执行
    • 发布计划表->在到达执行条件之前,再把后期要做的事情订阅到计划表中->到达条件后,通知计划表中的方法执行

1.发布订阅设计模式-利用jquery 中的$.Callbacks()

步骤 1)创建计划表 $.plan.add/remove/fire…

  1. let $plan = $.Callbacks();

步骤 2) 设定何时执行计划表中的方法

//=============一秒钟之后执行计划表中的方法
setTimeout(() => {
    $plan.fire(10, 20);
}, 1000);


const fn1 = (a, b) => console.log(1, a, b);
const fn2 = () => console.log(2);
$plan.add(fn1); //向事件池中添加方法
$plan.add(fn2);

// ...
const fn3 = () => console.log(3);
const fn4 = () => console.log(4);
$plan.add(fn3);
$plan.add(fn4);

// ...
const fn5 = (a, b) => console.log(5, a, b);
$plan.add(fn5);

2.发布订阅设计模式-自己创建事件池

2.png