JavaScript是一門面向對象的語言。在JavaScript中有一句很經典的話,萬物皆對象。既然是面向對象的,那就有面向對象的三大特徵:封裝、繼承、多態。這裏講的是JavaScript的繼承,其他兩個容後再講。
JavaScript的繼承和C++的繼承不大一樣,C++的繼承是基於類的,而JavaScript的繼承是基於原型的。
現在問題來了。
原型是什麼?原型我們可以參照C++裏的類,同樣的保存了對象的屬性和方法。例如我們寫一個簡單的對象
function Animal(name) {
this.name = name;
}
Animal.prototype.setName = function(name) {
this.name = name;
}
var animal = new Animal("wangwang");