JavaScript设计模式——策略模式 发表于 2023-10-20 更新于 2023-10-21 分类于 设计模式 策略模式策略模式,定义了一系列的算法,把它们一个个封装起来,并且使它们可以互相替换。它可以帮助我们在运行时动态地选择不同的算法或行为。 主要概念 Context:封装上下文,根据需要调用需要的策略,屏蔽外界对策略的直接调用,只对外提供一个接口,根据需要调用对应的策略。 Strategy:策略,含有具体的算法,其方法的外观相同,因此可以互相代替。 StrategyMap:所有策略的集合,供封装上下文调用。 123456789const StrategyMap = {};function context(type, ...rest) { return StrategyMap[type] && StrategyMap[type](...rest);}StrategyMap.add = (a, b) => console.log(a + b);context('add',1,2);