1.原型链逐步继承:
缺点:过多的继承了没用的属性
2.借用构造函数:call 和applyh(ex:工厂模式造车)
缺点:只能借用方法,不能借用原型
每次构造函数都要多走一个函数,浪费资源
3.共享(共有)原型
缺点:不能随便改动自己的原型,父子原型都指向同一块内存空间,是映射关系
4.圣杯模式:方法还是公有原型,略有不同
还有两点不完善:
1.构造器constructor指向混乱,继承混乱
son.__proto__指向的本应该是F().__proto__,然后F().__proto__再指向Father.prototype
但这种情况下指向的是F.__proto__
改进
2.无法知道自己真正继承至谁(记住最好,也不强求)
改进:
yahoo 贡献的高端写法:YUI3库有个inherit,现在不用了,了解一下:
先看一个私有化变量应用:
上文有错误,在调用prepareWife的返回结果:
这个prepareWife就变成了一个私有化变量,没有办法通过Deng.xxxx访问的变量
再来理解雅虎的高端写法: