1. 程式人生 > 實用技巧 >js的兩種繼承方式

js的兩種繼承方式

基於原型的繼承:通過隱式原型鏈來實現繼承

// 定義父類Animal
function Animal(sex) {
  this.sex = sex;
}
Animal.prototype.gender = function () {
  console.log(`這隻動物是${this.sex}的`);
};
// 讓Cat繼承Animal
Cat.prototype.__proto__ = Animal.prototype;

// 定義子類Cat
function Cat(sex, food) {
  Animal.call(this, sex); //繼承Animal中的sex,相當於super()
  this.food = food;
}
Cat.prototype.eat = function () {
  console.log(`這是隻${this.sex}貓,他喜歡吃${this.food}`);
};

let cat = new Cat("公", "