🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
## 一、来源 Mixin模式就是一些提供能够被一个或者一组子类简单继承功能的类,意在重用其功能; 在面向对象的语言(如JAVA)中,我们会通过接口继承的方式来实现功能的复用。但是在javascript中,我们没办法通过接口继承的方式,但是我们可以通过javascript特有的原型链属性,将功能引用复制到原型链上,达到功能的注入,这就是混入模式; ## 二、优缺点 优点 有助于减少系统中的重复功能及增加函数复用。当一个应用程序可能需要在各种对象实例中共享行为时,我们可以通过在Mixin中维持这种共享功能并专注于仅实现系统中真正不同的功能,来轻松避免任何重复; 缺点 有观点认为将功能注入对象原型中会导致原型污染和函数起源方面的不确定性;