JavaScript深入浅出(3)

OOP-面向对象程序设计

概念与继承

10

原型链

9

实现继承的方式

11
1.Student.protptype = Rerson.prototype; // 禁止使用,修改子类时会一并修改父类
2.Student.prototype = new Person(); // 不推荐使用,使用Person的构造器创建会带回Person的参数.
new + 构造器 这样会创建一个对象,这个对象的原型指向构造器的原型。例如:new Person 时需要 name, age ,在创建Person 实例作为 Stundent.prototype 时,传如何东西进去作为 name,age 都是很奇怪的。
3.Student.prototype = Object.create(Person.prototype); // 理想的继承方式

Object.create兼容性处理(模拟方法):

1
2
3
4
5
6
7
if (!Object.create){
Object.create = function(proto){
function F(){}
F.prototype = proto;
return new F;
}
}

坚持原创技术分享,您的支持将鼓励我继续创作!