Contents

设计模式总结

Contents

设计模式

设计模式 描述 例子
单例模式 一个类只能构造出唯一实例 vuex
工厂模式 对创建对象逻辑的封装 new 创建实例
观察者模式 当一个对象被修改时,自动通知所有依赖它的对象 Object.defineProperty()
发布-订阅模式 结合观察者和中介者模式,当发布者发布时,会有调度中心执行订阅者的订阅事件 vue 的双向绑定
装饰器模式 对类的包装,动态扩展类的功能 js 的装饰器, koa2 的洋葱模型(中间件)
适配器模式 兼容新旧接口,对类的包装 多态
外观模式 隐藏系统内部逻辑,对外提供可以访问系统的接口 封装
策略模式 根据不同的场景,执行对应的操作 重载
代理模式 为一个对象提供一个代用品或占位符,以便控制对它的访问 Proxy、HTML元 素事件代理
迭代模式 提供一种方法遍历一个聚合对象中各个元素 链表
中介者模式 处理同级对象之间的双向交互 聊天室, 聊天室里面的人之间并不能直接对话,而是通过聊天室这一媒介进行转发。
访问者模式 能够在不改变一个对象结构的前提下能够给对象增加新的逻辑,新增的逻辑保存在一个独立的访问者对象中。 1.对象结构中对象对应的类很少改变,但经常需要在此对象结构上定义新的操作。

详解

前端需要了解的9种设计模式 菜鸟教程 前端设计模式个人汇总 JS设计模式