定义一族算法类,将每个算法分别封装起来,让它们可以互相替换。

    使算法的变化独立于使用它们的客户端。

    适用于根据不同类型的动态,决定使用哪种策略的应用场景。

    定义一系列算法,把它们一个个封闭起来,并且使它们可以互相替换。
    目的是,将算法的使用和实现分离开来。
    如 : element-ui 中的自定义表单验证 rule.js

    image.png

    策略模式,需要将策略和执行策略的上下文分离开