一、物件原型__proto__
和建構函式原型物件prototype
都有乙個屬性,叫做constructor
,稱之為建構函式,主要記錄該物件引用了哪個建構函式,可以讓原型物件重新指向原來的建構函式,這就是為什麼在例項物件中傳遞引數時,建構函式本身不需要寫return返回結果的原因
為了更清晰的看到是否為建構函式本身
二、建構函式原型物件中可以寫多個方法
function
star
(username,userage)
star.prototype =
, usermovie:
function()
}var lxy =
newstar()
;
注意以上**,我在star.prototype
原型物件中雖然寫了多個方法,但同時也新增了另一段**constructor:star
,這是為了手動利用constructor
指回原來的建構函式,如果不寫此**,則原來的建構函式就會被替代,如下**和列印圖
console.
log(lxy.__proto__.constructor)
console.
log(star.prototype.constructor)
如果新增了該**,再次列印
同時,就可以通過例項物件去呼叫建構函式的方法
物件導向 原型完善 constructor(掌握)
constructor的主要作用是 告訴我們當前物件是由哪個建構函式產生的。建立乙個建構函式 person function person 建立乙個例項物件 p 由建構函式例項化了乙個物件p,列印出的物件p包含了 proto 屬性,及從 proto 中可以訪問到constructor,prototy...
原型中的constructor去哪了
建構函式的prototype屬性指向它的prototype物件,也就是原型物件,在原型物件中有乙個constructor屬性,指向該建構函式。但是我們在使用建構函式時,一般會重寫它的原型,會導致constructor指向出問題。function person person.prototype.use...
js基本Constructor(構造器)
js不支援類的概念,單它支援與物件一起用的特殊constructor 構造器 函式。通過在構造器前面加new關鍵字,告訴js想使用構造器一樣例項化乙個新的物件,並且物件成員由該函式定義。在構造器內,關鍵字this引用新建立的物件。基本構造器如下面這個例子 function car m,y,s var...