TODO:策略模式
- 策略模式定义一系列的算法,把它们一个个封装起来,并且使它们可以相互替换。
- 策略模式可以有效避免很多 if 条件语句。
- 策略模式符合开放-封闭原则,使代码更容易理解和扩展。
- 策略模式中的代码可以复用。
const express = {
'顺丰': function (package) {
// 路径计算...
return "¥45.95";
},
'京东': function (package) {
// 路径计算...
return "¥39.40";
},
'韵达': function (package) {
// 路径计算...
return "¥24.45";
}
};
const calculateExpense = function (type, package) {
return express[type] ? express[type](package) : 0;
};
calculateExpense('京东', 1); // ¥39.40
calculateExpense('韵达', 1); // ¥24.45