![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
设计模式
syt_1013
这个作者很懒,什么都没留下…
展开
-
使用设计模式六大原则之一(单一职责原则)
单一职责原则(一个方法只做一件事,请求数据的函数就不要渲染数据了,吃饭和上厕所别用同一个地方)我们来写一个根据数据来渲染dom的方法 function view(url, data, dom){ // 获取数据功能 $.ajax({ url: url, data: data, success: function(json){原创 2021-08-26 17:11:53 · 71 阅读 · 0 评论 -
js设计模式5-发布订阅模式
1.发布-订阅模式又叫做观察者模式,他定义对象件的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖他的对象都将得到通知再现实生活中,送发短信通知就是一个典型的发布-订阅模式,小明,小红等购买者都是订阅者,他们订阅房子开售信息。售楼处作为发布者,会在何时的时候遍历花名册上的电话号码,依次给购房者发布消息首先要指定好谁充当发布者(比如售楼处)然后给发布者添加一个缓存列表,用于存放回掉函数以便通知订阅者(售楼处花名册)最后发布消息时,发布者会遍历这个缓存列表,依次触发里面存放的订阅者回掉函原创 2021-08-08 17:48:06 · 149 阅读 · 0 评论 -
设计模式4-迭代器模式
1.迭代器分为内部迭代器和外部迭代器内部迭代器是指在内部已经定义好了迭代规则,他完全接手整个迭代过程,外部只需要一次初始调用外部迭代器必须显示地请求迭代下一个元素场景一:比如判断2个数组中元素的值是否完全相等// 内部迭代器var compare = function(ary1,ary2){ if(ary1.length!==ary2.length){ throw new Errror('ary1和ary2不相等') } each(ary1,function(i,n){ if原创 2021-08-07 17:14:28 · 198 阅读 · 0 评论 -
设计模式3-代理模式
代理模式 var myImage=(function(){ var imgNode=document.createElement('img') document.body.appendChild(imgNode) return { setSrc:function(src){ imgNode.src=src; }原创 2021-08-07 13:53:41 · 74 阅读 · 0 评论 -
设计模式2-策略模式
策略模式应用场景:表单校验 <form id="registerForm"> 用户名:<input type="text" name="userName" /> 密码:<input type="text" name="password" /> 手机号:<input type="text" name="phoneNumber" /> <button type="submit">提原创 2021-07-28 14:41:13 · 43 阅读 · 0 评论 -
设计模式1-单例模式
1.实现单例模式var Singleton=function(name){ this.name=name}Singleton.instance=nullSingleton.prototype.getName=function(){ console.log(this.name)}Singleton.getInstance=function(name){ if(!this.instance){ this.instance=new Singleton(nam.原创 2021-07-26 13:33:51 · 53 阅读 · 0 评论