一种动态地往一个类别中添加新的行为的设计模式。装饰器,顾名思义,就是起到装饰的作用。装饰器模式与代理模式有一些类似,但与代理模式不同的是,可以随意组合装饰函数
const decorate1 = (option) => {
return {
...option,
decorate1: "decorate1",
};
};
const decorate2 = (option) => {
return {
...option,
decorate2: "decorate2",
};
};
let config = {
time: "2023-01-18",
start: "火星",
};
console.log(decorate1(decorate2(config)));
上面代码,使用两个装饰函数decorate1,decorate2对config进行装饰,decorate1,decorate2分别代表不同的功能,也降低了耦合性