在JavaScript中,每個函數的原型對象都有一個不可枚舉的屬性constructor
,它指向函數(EcmaScript §13.2)。這是不以任何原生功能(例如僅instanceof
檢查原型鏈)中使用,但我們are encouraged to adjust it重寫功能的prototype
財產繼承時:什麼是`constructor`屬性真的用於?
SubClass.prototype = Object.create(SuperClass.prototype, {
constructor: {value:SubClass, writable:true, configurable:true}
});
但是,難道我們(包括我在內),這樣做只爲了清晰和整潔?是否有任何真實世界的用例依賴於constructor
property?
什麼是我的理解構造函數屬性用於查看某個特定對象是由哪個函數構造函數創建或構造的。 – Apurv
相關:[Javascript中的構造函數屬性是否有很好的用例?](http://stackoverflow.com/questions/8073867/is-there-a-good-use-case-for-the-constructor-property -in-javascript),儘管答案沒有幫助 – Bergi
另請參見:[爲什麼需要設置原型構造函數?](http://stackoverflow.com/q/8453887/1048572) – Bergi