4
我想抓住JavaScript的構造函數,如果他們真的只讀。這裏是一個簡單的測試場景:所以在這一點上,每一個新的函數接收一個包含構造函數作爲參考的原型對象。這很好。現在考慮這個:JavaScript的構造函數
var B = function() {
this.id = 0;
}
A.prototype.constructor = B; // what does this do with A?
所以,現在,A的每個實例都應該得到B中的構造函數:
var C = new A();
console.log(C.constructor == B) // true
所以最後,這是否會對每個實例任何真正的影響?它似乎並不如此:
console.log(C.id); // what will this yield?
我的問題是:什麼是公開構造函數引用的目的是什麼?顯然你可以設置/覆蓋它,但除了改變引用外,它什麼也不做。或者我錯過了什麼?
嗨,關於javascript繼承的每一篇文章,都告訴我們修復原型構造函數,在那個問題之後:A.prototype = Object.create(B.prototype);' 'A.prototype.constructor = B //在這裏修復' 我不明白'Object.create'的作用,但是下一行似乎沒用。我寫了一些代碼刪除它,並沒有任何效果。所以我的問題是,爲什麼每個人都說*修復構造函數? – 2015-11-12 20:30:23