0722面向对象(二)
自己学习 继承和数据类型监测
一、类原型的重定向
1.向内置原型上扩展方法
第一种:
func.prototype.A=function(){}
func.prototype.B=function(){}
func.prototype.C=function(){}
第二种:别名
let proto=func.prototype
proto.Afunction(){}
proto.Bfunction(){}
第三种:在原型上批量设置属性方法,采用重定向的方式
func.prototype={
A:function(){}
}
这种方式缺点:
缺失了constructor
缺失了原型对象上的属性和方法
解决方法:
a>
在prototype手动设置constructor
b>两个原型对象合并,用新的原型对象替换原始的原型对象,(问题:如果新老有个属性方法相同,则新的值会替换老的值)
c>更好的方式——重构原型指向
把老的原型对象作为新原型对象的上级原型
2.类原型的重定向
内置类的原型对象不允许重定向!!!
3.练习题
// =>0 //=> 30
、
二、面对对象练习题
每一个对象都有__proto__属性
函数对象才有prototype属性
c1 没有通过this.xx=xx设置私有属性,
=》tomunfinedjoin
2.还不太懂,回去补课