策略模式
@(记录)[读书笔记]
策略模式:定义一系列算法,把它们一个个封装起来,并且使它们可以相互替换。
将不变的部分和变化的部分隔开是每一个设计模式的主题,策略模式的目的是将算法的使用与算法的实现分离开来。
一个基于策略模式的程序化至少有两部分组成,一组策略类,封装了具体的算法并负责具体的计算过程;另一组是环境类Context,Context接受客户的请求,随后把请求委托给某一个策略类。
|
|
关于策略模式的定义,其实就是定义一系列的算法,把他们封装成策略类,算法被封装在策略内部的方法里,在客户对Context发起请求时,Context总是把请求委托给策略对象中间的某个进行计算。
以上策略模式的JavaScript版本
可以定义动画的模式,不同动画或者速度定义不同的策略进行调用;
可以定义表单登录窗口的验证策略,用户名,密码,电子邮箱等不同的验证有不同的策略;
使用策略模式编写表单验证:
|
|
检测
如果想要一个表单验证多个规则:
改变Validator.prototype.add