设计模式-策略模式
软件设计模式是高效组织代码的方式,它能保证系统的灵活性和可靠性.策略模式是最长用的模式之一.
定义一系列的算法,把它们封装起来.并且使它们可以互相替换. - 策略模式
实现方式
策略模式一般有两个部分组成:
第一部:一组封装着可以互相替换的算法的策略组
第二部:环境类Context,接受客户的请求,随后将请求委托给某个策略组执行.
在静态语言中,要实现策略组可替换,这些策略组必须实现相同的接口.在JavaScript中方法本身只可以随意替换的.所以策略组在JavaScript中可以充分发挥它的特点.
例子
计算分数:基础分数*等级数.等级分为A、B、C对应的值分别是:2、3、4.
1 | // 策略组 start |
使用场景
当你的一个方法里面有很多if-else 判断语句做不同情景的处理时,这时你就可以考虑使用策略模式进行代码分离封装了.
前端最常用的场景是:
- 表单值的合法性校验.
- 界面不同状态,处理方式不同.
作者: Fynn
本文采用知识共享署名-非商业性使用 4.0 国际许可协议进行许可