装饰器模式

装饰器模式,可以理解为对类的一个包装,动态地拓展类的功能,ES7的装饰器语法以及React中的高阶组件(HoC)都是这一模式的实现。react-redux的connect()也运用了装饰器模式,这里以ES7的装饰器为例:

1
2
3
4
5
6
7
8
9
10
function info(target) {
target.prototype.name = '张三'
target.prototype.age = 10
}

@info
class Man {}

let man = new Man()
man.name // 张三