javascript面向对象编程:构造函数的继承

对象之间“继承”的五种方法

比如现在有一个“动物”对象的构造函数

function Animal(){
   this.species = "动物";
}

还有一个“猫”对象的构造函数

function Cat(name,color){
    this.name = name;
    this.color = color;
}

怎样才能使猫继承动物呢?

一;构造函数绑定

第一种方法也是最简单的方法,使用call或appl方法,将父对象的构造函数绑定在子对象上,即在子对象构造函数中加一行;

function Cat(name,color){
    Animal.apply(this,arguments);
    this.name = name;
    this.color = color;
}
var cat1 = new Cat('大毛','黄色');
alert(cat1.species);  //动物

二。prototype模式

第二种方法更常见,使用prototype属性

如果“猫”的prototype对象,指向一个Animal的实例,那么所有“猫”的实例,就能继承Animal了;