装饰者模式

装饰者模式又称为装饰器模式,为对象添加新功能;不改变其原有的结构和功能。

适配器模式、装饰者模式与代理模式区别

个人理解:

es7 装饰器

    
      @decorator
      class A {}

      // 等同于

      class A {}
      A = decorator(A) || A; // 赋值给要装饰的对象的同名变量,此时的A 与 装饰前的A已经不是同一个对象了
    
  
装饰器 阮一峰 : core-decorators.js是一个第三方模块,提供了几个常见的装饰器,通过它可以更好地理解装饰器。 很有用。

Mixin (混入行为,一般也属于装饰器行为)可以使用 extend (继承) 代替混入行为
Trait 也是一种装饰器,效果与 Mixin 类似。