Skip to content
js
class Vehicle {
  constructor() {
    this.passengers = [];
    console.log('Vehicle created.')
  }
  addPassenger(p) {
    this.passengers.push(p)
  }
}
class Car extends Vehicle {
  constructor() {
    super();
    console.log('Car created.')
  }
  deployAirbags() {
    console.log('BWOOSH!');
  }
}

多态是面向对象的一个术语,意思是一个实例不仅是它自身类的实例,也可以被当作它的任何父类的实例来使用。 在很多面向对象语言中,多态是OOP中的一个很特殊的特性,而在JS中,因为没有类型的概念,所有任何对象可以在任何地方被使用, 从这个角度来说,JS具备终极的多态性。

枚举对象属性

对于对象obj和属性x,如果obj中存在x属性,obj.hasOwnproperty(x)返回true。 反之,如果属性没有定义或者定义在原型链中,obj.hasOwnproperty(x)结果返回为false。

共 20 个模块,1301 篇 Markdown 文档。