所以我一直在做大量的關於原型的閱讀,我大部分都是這樣理解的,我的意思是,我得到以下內容。函數和對象的原型構造函數
var Animal = function(species) {
this.species = species;
};
Animal.prototype.getSpecies = function() {
return this.species;
}
var myDog = new Animal("Anderson");
alert(myDog.getSpecies());
我甚至知道我可以創建一個新的物種,並設置原型動物,然後能夠調用getSpecies()。是啊!
什麼讓我困惑的是:
var Person = function(firstName, lastName) {
this.firstName= firstName;
this.lastName= lastName
};
var meToo = { fName: "ken", lName: "N" };
alert(meToo.constructor.prototype); // [object Object]
alert(Person.constructor.prototype); // function Empty(){}
http://jsfiddle.net/r0k3t/s8Sx7/9/
我試圖找到的東西,解釋了爲什麼原型人物是函數(){}?我認爲它會設置爲全局對象'this'(在本例中爲window)。另外 - 爲什麼我不能枚舉它的屬性?讀this會建議我可以使用constructor.prototype檢索我認爲是'window'的對象,然後枚舉這些屬性。
很顯然我錯過了一些東西 - 謝謝!
嘗試的console.log(meToo.constructor.prototype)創建任何 – mplungjan
下面是使用記錄更新的小提琴http://jsfiddle.net/r0k3t/s8Sx7/ 14/ – Kenn