设计模式---004策略模式(转载自我的老师 Alley-巷子)

那年仲夏 提交于 2019-11-29 02:35:27

一、设计模式概念

  设计模式所强调的是代码的结构设计和解决问题的思路

 

二、策略模式

  策略模式:所有的解决方案我们都应该提前设定好,不在根据当下的情形做判断,将不同的问题及不同的解决方案对应起来。
 
  策略模式最大的好处就是将问题和解决方案做了映射关系的处理,这样就不需要每次进行判断
  

  简单来说我们一般情况下周一、周二、周三上早班需要每天7点起床,周四、周五上中班每天10点起床,那么我们就会用手机提前订好闹钟,手机会根据当前的日期来决定闹钟几点响起,这就是最简单的策略模式

 

三、案例

 

复制代码
var LoL = {
    hero:{
        "盲僧":function(){
        
        },
       "亚索":function(){

        },
        "提莫":function(){

         }
    },
    create:function(type){
        //这里填写什么?
    }
}

LoL.create("盲僧");
思考我们如何通过type类型得到英雄这个对象?
 
我们第一时间想到的是switch判断,但是正确的答案是  return new this.hero[type]( );
 
 
这样减少了代码的判断的逻辑,代码的执行效率也就提高了
复制代码

 

 

 

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!