设计模式
weixin_42397018
这个作者很懒,什么都没留下…
展开
-
前端JavaScript设计模式-代理模式实现
代理模式 定义:为一个对象提供一种代理以控制对这个对象的访问 代理对象起到类似中介的作用,会增加一些功能(如,校验,合并等等),也会去掉一些原有对象的功能 虚拟代理-图片加载,文件上传 保护代理-登录操作后才能看全功能,前端校验 远程代理-监控多个对象的状态,总机监控分店 智能代理-提供额外的其他服务, 火车站代售处 举栗 代理模式都少不了送花,这里也不例外 //女神根据心情好坏看是否接受小明的送...原创 2020-04-04 00:31:42 · 130 阅读 · 0 评论 -
前端JavaScript设计模式-观察者模式(发布-订阅模式)
定义:观察者模式,定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都将得到通知。事实上,只要你曾经在DOM节点上绑定过事件函数,那么你就曾经使用过观察者模式了! 实现:Event模块实现自定义事件,绑定事件,触发事件,移除事件。 代码中用到工厂方法模式工厂方法模式实现 PlaneFactory.prototype = new Event(); functi...原创 2020-04-01 23:45:46 · 161 阅读 · 0 评论 -
前端JavaScript设计模式-装饰者模式实现
装饰者(decorator)模式能够在不改变对象自身的基础上,在程序运行期间给对像动态的添加职责。与继承相比,装饰者是一种更轻便灵活的做法。可以当脚本运行时,在子类中增加行为会影响原有类所有的实例,而装饰者却不然。取而代之的是它能给不同对象各自添加新行为 实现: 构造函数需要一个装饰资源池,提供相应的装饰方法,提供添加装饰方法的方法。 场景:工厂方法模式生产不同类型的飞机;装饰者模式增加不同的血量...原创 2020-04-01 23:12:59 · 190 阅读 · 0 评论 -
前端JavaScript设计模式-工厂模式实现
定义:工厂模式定义创建对象的接口,但是让子类去真正的实例化。也就是工厂方法将类的实例化延迟到子类 function SmallPlane(){ this.width = 100; this.height = 100; this.boold = 100; this.name = 'smallPlane'; } function Big...原创 2020-03-31 00:26:39 · 176 阅读 · 0 评论 -
JavaScript中单例模式的实现
单例模式 单例模式的定义:保证一个类仅有一个实例,并提供一个访问它的全局访问点。 单例模式是一种常用的模式,有一些对象我们只需要一个,比如线程池、全局缓存、浏览器中的windows对象等。在JavaScript开发中,单例模式的用途同样非常广泛。比如当我们单击登录按钮时,页面中会出现一个登录浮窗,而这个登录浮窗是唯一的,无论单击多少次登录按钮,这个浮窗只会被创建一次,那么这个登录浮窗就适合用单例模...原创 2020-03-22 22:43:09 · 111 阅读 · 0 评论