從我的理解中,Prototype對象是其他對象繼承屬性和方法的對象,基本上它擁有一個構造器屬性,指向或指向構造函數創建Object.Please考慮下面的代碼:結合使用JS的原型和構造器屬性
function Animal()
{
this.name="no name";
}
function Cat()
{
Animal.Call(this); //Please Explain
this.mood="sleepy";
}
Cat.prototype=new Animal(); //Cat inheriting Animal?
Cat.prototype.constructor=Cat; //Please Explain
請解釋清楚,但在細節的代碼行意見和反映的概念,謝謝。
你可能是指'Animal.call(this);'。你究竟想要解釋什麼?什麼'.call'呢?爲什麼它在那裏?或者是什麼?順便說一句,更好的建立原型是'Cat.prototype = Object.create(Animal.prototype);'。在那時你的代碼中,你不想創建一個新的'Animal'實例。 – 2013-02-22 13:59:08
是的,我想知道'Animal.call(this)'和'Cat.prototype.constructor = Cat'的用途是什麼,'謝謝。 – MrShabana 2013-02-22 14:05:01