2022-01-24 JS常见设计模式

1.什么是设计模式?

设计模式是一套经反复使用,多人知晓,经过分类的代码设计经验的总结

2.为什么要使用设计模式?

为了代码的可复用性,让代码更便于理解,保证代码的可靠性
设计模式使代码实现了真正的工程化

3.有哪些设计模式?
  • 构造器模式
  • 模块化模式
  • 暴露模块模式
  • 单例模式
  • 中介者模式
  • 原型模式
  • 命令模式
  • 外观模式
  • 工厂模式
  • mixin模式
  • 装饰模式
  • 亨元模式
  • MVC模式
  • MVVM模式
  • 组合模式
  • 适配器模式
  • 外观模式
  • 观察者模式
  • 迭代器模式
  • 惰性初始模式
  • 代理模式
  • 建造者模式
4.单例模式
定义:在内存中只会创建且仅创建一次对象的设计模式
实现原理

单个实例,只有一个对象,
多次创建,只返回一个对象

示例
function fn() {
	/*给函数添加一个属性,因为函数是全局的,所以该属性一旦添加就一直存在*/
       if (!fn.obj) {
        fn.obj = { name: "zs"};
    }
    return fn.obj;
}
var f1 = new fn();
var f2 = new fn();
console.log(f1 === f2); //true
5.组合模式
定义:把多个对象组成树状结构来表示局部与整体,使得用户可以同时操作单个对象和对象的组合。
实现原理
1.可以以相同的方法处理对象的集合和其中特定的子对象
组合对象和组成该对象的对象可以实现同一批操作
对组合对象执行的操作会向下传递到所有的组成对象使所有组成对象执行同样操作

2.可以将对象组织成树状结构,是整棵树可被遍历
所有组合对象都实现一个用来获取其子对象的方法
借助该方法可以隐藏实现的细节,组织子对象,使子对象内部的实现不形成依赖
示例
在这里插入代码片
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

前端OnTheRun

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值