策略模式指的是定义一系列的算法,把它们一个个封装起来。将不变的部分和变化的部分隔开是每个设计模式的主题,策略模式也不例外,策略模式的目的就是将算法的使用与算法的实现分离开来。可以很好的替换if-else混乱的代码.
var strategies = {
'S':function(salary){
return salary * 4;
},
'A':function(salary){
return salary * 3;
},
'B':function(salary){
return salary * 2;
}
}
var calcalateBonus = function(level,salary){
return strategies[level](salary);
}
console.log(calcalateBonus('S',10000));
本文介绍了一种设计模式——策略模式,该模式通过定义一系列的算法并将其封装,从而实现算法的独立于客户端而自由切换。文章通过一个具体的案例展示了如何使用策略模式来替代复杂的if-else条件判断语句。
167

被折叠的 条评论
为什么被折叠?



