JavaJavascript基础进阶(十七)JS中常用的设计模式

单利设计模式、构造原型设计模式、发布订阅设计模式、promise设计模式

单利模式

let model = (function() {
    let fn = function() {
        // .....
    }

    return {
        init: function() {
            fn()
        },
        fn: fn,
    }
})();
model.init();

构造原型设计模式

最贴近OOP面向对象编程思想的

不管是封装类库还是插件或者UI组件,都是基于构造原型模式开发的。

class Person {
  constructor(...arg){
    // 私有属性或者方法
    let [x = 0, y = 1] = arg
    this.x = x
    this.y = y
  }
  // 公有属性方法
  say() {
    console.log(this.name)  
  }
}
let p1 = new Person();
// 继承Person类
class Child extends Person {
  constructor(x,y,z){
    super(x,y,z);
    this.z = z
  }
  fn(){
    this.say()
  }
}
let c1 = new Child(100,200,300)

发布订阅设计模式:观察者模式

不同于单利和构造,发布订阅是小型设计模式。应用到某一个具体的需求中:凡是达到某个条件之后要执行N多方法,我们都可以依托于发布订阅模式管理和规划我们的js代码

实现思路:
1、创建一个计划表(容器)
2、后期要做什么事情一次吧需要的处理事情增加到计划表中
3、当符合某个条件时,通知计划表按照顺序执行

promise设计模式

解决ajax异步请求层级嵌套问题

你可能感兴趣的:(JavaJavascript基础进阶(十七)JS中常用的设计模式)