JS设计模式
教你怎么看懂它!!!
贵哥的编程之路(热爱分享)
IT讲师(csdn研修院 网易云课堂 51cto学堂 php中文网),努力进步中。我想看看我的巅峰在哪里。
展开
-
命令模式(javascript)版13
/*class Receiver{ exec() { console.log('执行') }} class Command{ constructor(Receiver) { this.Receiver=Receiver;//我的下面是士兵 } cmd() { console.log('触发命令')//击鼓中 this.Receiver.exec();//小...原创 2020-04-22 22:37:27 · 298 阅读 · 0 评论 -
职责链模式(javascript版)12
//职责链模式是链式操作是再链子上完成的操作/*class action{ constructor(name) { this.name=name; this.nextAction=null; } setNextAction(action) { this.nextAction=action; } handle() { console.log(`${this.nam...原创 2020-04-22 22:35:33 · 309 阅读 · 0 评论 -
模板模式()javascript版11
//模板模式是把几个函数封装,调用一个函数就行了/*class k{ qq() { q(); w(); } q() { console.log('1') } w() { console.log('2') }}*/原创 2020-04-22 22:32:50 · 294 阅读 · 0 评论 -
策略模式(javascript版)10
//策略模式是把一个类分开成几个类,分别调用就行了,然后几个类调用一个方法就行了/*class q{ buy() { console.log("普通会员"); }} class w{ buy() { console.log("超级VIP会员");}}let q1=new q();q1.buy();let w1=new w();w1.buy();*/核心:...原创 2020-04-22 22:31:45 · 288 阅读 · 0 评论 -
桥接模式(JavaScript版)9
//桥接模式//第一种是先画图片完再画颜色,不分离//第二种是先两者分离,然后是先各自画颜色和图片再融合起来就行了/*class colorshape{ yellowCircle() { console.log('yellow circle')//圆形 } redCircle() { console.log('red circle') ...原创 2020-04-22 22:24:49 · 313 阅读 · 0 评论 -
状态模式(JavaScript版)8
核心是状态变化,简单话,也就是说不用ifelse去做啦//状态模式是很多状态,多种状态把核心是状态和谁去看状态做出相应的改变啦//几个类因为是状态模式是两个类一个是状态一个是看状态做出相应的改变啦\///*class wo{ constructor() { //我先还没看呢 this.state=null//为什么因为wo还没看灯呢 }}class zhuangta...原创 2020-04-22 19:15:33 · 265 阅读 · 0 评论 -
观察者模式7(javascript版)兄弟们,好了,重新写好了
/*class dj{ constructor() { this.wo=[]; //还有一个是看看这三个人一起去了一家店里面点了一样东西几个 } notifyAllObservers() {//然后告诉商家 this.observers.forEach(observer => { observer.update() }...原创 2020-04-22 19:03:25 · 354 阅读 · 4 评论 -
外观模式(javascript版)6
function bindEvent(elem, type, selector, fn) { if (fn == null) { fn = selector selector = null } // ******}// 调用bindEvent(elem, 'click', '#div1', fn)bindEvent(elem, ...原创 2020-04-22 18:59:12 · 336 阅读 · 0 评论 -
代理模式(javascript版)5
/*class dn//代理 { constructor(name) { this.web1=new web(name); } display() { this.web1.display();//我叫代理叫明细唱歌因为我不能直接明星啊 } } //因为我不能直接开网站,所以我通过代理者电脑来开啊 class web { constructor(n...原创 2020-04-22 18:56:18 · 288 阅读 · 0 评论 -
装饰器模式4(javascript版)4
//装饰者模式 //致命思想:人穿上衣服 /*class Circle { //这里不行,因为下面要调用上面的进行装饰的啊 draw() { console.log('画一个原型') } } class Decorator { constructor(circle) { this.circle = circle } //然后是...原创 2020-04-22 18:53:26 · 321 阅读 · 4 评论 -
适配器模式(javascript版)3
//适配器模式(不同的) //思想:因为旧接口不兼容啊所以须要适配器适配一下,兼容才能插到里面 //先写两个类。一个旧一个适配器 /*class Adaptee { //这里方法也好,属性也好 specificRequest() { //为什么这里要写return,因为要获取它啊,才能适配啊 return '德国标准的插头' } } ...原创 2020-04-22 18:49:59 · 263 阅读 · 0 评论 -
单例设计模式(javascript版)2
//单例模式思想 //让构造函数私有化就能比如是吧,因为一些原因比如你成绩不到,,不能入人大附中啊所以你应不应该走后门啊, //因为对象在类里面,所以外面是类.方法啊 //思路是先自执行一次,然后是先让最上面的先初始化再说吧 //然后是先自己执行,然后是看看是不是第一次,如果是那就实例化最上面的函数,然后是先类.函数然后是返回到最上面的那个执行login,然后是在类.函数然后是返回...原创 2020-04-22 18:32:38 · 294 阅读 · 0 评论 -
工厂模式(JavaScript版)1
//思想工厂模式 /** * 比如是吧,你从字面意思理解是我给一个东西你做完就给我,我不需要知道什么做的 */ //在程序中是先有类然后有对象,要不然比如是吧,如果是先有对象然后才有类的话,那对象是哪里来的,因为人看得见,,所以归纳为类啊程序看不见啊所以先有类在有对象,。比如程序先有对象的话,因为程序看不见啊所以不知道对象哪里来的,是类模出来的明白了,是类这个上帝创出来的对象...原创 2020-04-22 18:19:28 · 341 阅读 · 0 评论