首页
沸点
课程
数据标注
HOT
AI Coding
更多
直播
活动
APP
插件
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
设计模式
前端小磨叽
创建于2023-09-05
订阅专栏
js中的设计模式。
暂无订阅
共14篇文章
创建于2023-09-05
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
软件设计开发原则
一个方法只做一件事。我们在平时维护项目时,总会深入具体执行函数修改代码,有的函数非常庞大做了很多的事,这个时候改动的地方将会非常的多,我们还要去考虑改动的地方有没有其他业务的关联,非常危险。 单一职责原则就是指导我们将项目中的业务抽象出来,根据各个职责将函数和对象拆分为更小的颗粒...
js中的设计模式之命令模式
将一个请求(方法调用)封装为一个对象,使发出请求的责任和执行请求的责任分割开。两者之间通过命令对象进行沟通,这样方便将命令对象进行储存、传递、调用、增加与管理。在我们日常开发中方法的发布者和方法执行者大多都是直接调用关系,发布者对象明显知道是谁调用了什么方法,这样的调用关系存在紧...
js中的设计模式之迭代器模式
迭代器模式是指提供一种方法顺序访问一个聚合对象中的各个元素,而又不需要暴露该对象的内部表示。迭代器使我们不用去关心访问对象的内部结构,就可以按照顺序去访问内部的每个元素,同时可以把迭代过程和业务逻辑抽离开来更加方便维护。更简单理解就是循环目标对象里的每一个值(如数组、对象等等),...
js中的设计模式之组合模式
是一种将对象组合成树状结构的层次结构模式,用来表示 整体-部分 的关系,使用用户对单个对象和组合对象具有一致的访问性。组合模式是一个树形结构,里面的数据可以是单个对象,也可以n个单个对象组合起来的组合对象。组合模式主要是用来表示 部分-整体的关系,也就是说组合模式下对于调用者角度...
js中的设计模式之模板方法模式
定义操作执行中方法的骨架,使所有子类按照定义好的步骤执行,但是具体执行的细节放在子类中实现的一种模式。模板方法模式是一种高层决策,基层执行模式,就像在公司中领导指定战略步骤,基层人员跟着指定好的步骤具体去执行一些事情。它由两种角色高层(抽象父类)和基层(具体执行子类)组成。抽象父...
js中的设计模式之中介者模式
定义一个中介者对象来封装一系列对象的交互,把一批原来交互关系复杂的对象转换成一组松散耦合的对象,使他们变得易于维护和修改。在我们开发中经常会将对象拆分为更小的颗粒度,可以提高对象的复用性,但是在很多场景下对象与对象之间会存在很多交互和依赖关系它们之间的关系会随着迭代越来越复杂复杂...
js中的设计模式之装饰者模式
装饰者模式也称为包装器模式,在不改变原有对象的基础上为其动态的添加上新的功能。在我们平时开发项目时想要扩展一个对象或者函数时(函数也是对象),可以直接修改原来的对象使其拥有新的功能,可是这样是不符合开放封闭原则的,而且随着业务越来越多目标对象会变的非常的庞大和复杂,变得难以维护。...
js中的设计模式之单例模式
保证一个类仅有一个实例,并提供一个访问它的全局访问点。在平时开发中来说有些对象或者操作只需要一个(比如事件的绑定,dom节点的创建又或者页面或者组件的创建、事件绑定等),所以这个时候就需要使用单例模式来时所需要的操作只执行一次类节省不必要的开销和资源。因为在js中生成一个对象不需...
js中的设计模式之策略模式
定义一系列的算法,把它们一个个封装起来,并且使它们可以相互替换。传统意义的策略模式如上所述,定义策略类封装一系列的算法,然后根据场景使用对应的算法。在js语言中对象、函数都可以不使用类来封装生成,直接进行定义即可,这就使策略模式在js中更加的灵活简单,并且根据实际业务从广义上来说...
js中的设计模式之发布订阅模式
它其实是一种对象间一对多的依赖关系,当一个对象的状态发送改变时,所有依赖于它的对象都将得到状态改变的通知。(如微信公众号一样有无数个订阅者,有一个发布者,当发布者发布文章的时候,订阅者都可以收到发布的文章。前端在之前使用jq的时候就有使用到发布订阅模式例如有trigger和on方...
js中的设计模式之职责链模式
为了避免请求发送者与多个请求处理者耦合在一起,将这些处理者对象串成一条链。当有请求发生时,将该请求沿着这条链传递,直到有一个对象处理它为止。在现实生活中用户使用我们的产品遇到问题时,统一入口都是找客服,如果是咨询服务那么客服就直接处理,如果是技术性问题那么客服可能就会把问题转给前...
js中的设计模式之适配器模式
将一个对象的接口适配成用户所期待的接口。适配器模式就是将不同对象的方法适配成可以对接或者统一调用的方式。它也是包装器的一种。在生活中也有很多类似的例子,比如有的手机没有3.5耳机插口,所以就需要增加一个转接头来完成适配功能以确保耳机的正常使用,如下图: 在我们平时开发中如果是我们...
js中的设计模式之代理模式
为我们访问的对象提供一个中间对象(代理)以控制对这个对象的访问。在某些情况下,一个对象不适合或者不能直接引用另一个对象,而代理对象可以在客户端和目标对象之间起到中介的作用。生活中也有很多代理模式的例子,就如上图中最下方,我们在租房市场中的关系,有些房东想要出租房子为了省心省事不想...
js中的设计模式之享元模式
运用共享技术有效支持大量细粒度的对象,以减少对象的创建数量来减少内存的占用提高性能。享元模式的核心就是共享,当在项目开发中创建了太多的对象,而这些对象还有很多相似之处的时候,我们就会把相似的对象提取出来让这些业务共用同一个对象来实现,以达到减少对内存的使用提高性能,这就是享元模式...