constructor功能及用法

2021-10-09 02:25:17 字數 1399 閱讀 3726

我們必須了解的一些概念:

functionp(

)const p =

newp()

;p.constructor ===

p// true

利用constructor屬性,我們便可以通過乙個例項物件,建立另乙個例項物件。如下

functionp(

)const p =

newp()

;const p2 =

newp.constructor()

;p2 instanceof

p// true

以上p是p的乙個例項物件,通過p的constructor建構函式方法來宣告p2,那麼p2也是p的乙個例項

constructor是表示原型和例項關聯關係的乙個屬性。所以當修改原型物件的時候,也會修改constructor。防止出現引用錯誤

function

person

(name)

person.prototype.constructor === person // true

person.prototype =};

person.prototype.constructor === person // false

person.prototype.constructor === object // true

如上,我們在重寫了person的prototype原型物件後,沒有了constructor,那麼person.prototype.constructor就不再指向person,但是我們可以通過person.prototype.constructor = person強行指回去。在原型繼承中會用到

functionp(

)// 壞的寫法

p.prototype =

,// ...};

// 好的寫法

p.prototype =

,// ...};

// 更好的寫法

p.prototype.

method1

=function

(...

);

以上三種都是操作p的原型物件,第乙個顯然會導致constructor指向錯誤,第二個不會導致錯誤但是不夠靈活,所以普遍推崇第三種寫法

當我們不知道某個例項的原型物件時可以通過constructor的name屬性來獲取

function

foo(

)var f =

newfoo()

;f.constructor.name // "foo"

完結,撒花

OTG FS ID功能及引申

1.概要 otg裝置使用插頭中的id引腳來區分a b device,id接地被稱作為a device,充當usb host,a device始終為匯流排 提供電力,id懸空被稱作為b device,充當usb device,裝置的usb host usb device角色可以通過hnp 主機交換 協...

MessageDigest的功能及用法

messagedigest 類為應用程式提供資訊摘要演算法的功能,如md5 and sha.資訊摘要是安全的單向雜湊函式,它接收任意大小的資料,並輸出固定長度的雜湊值。messagedigest 物件開始被初始化。該物件通過使用 update 方法處理資料。任何時候都可以呼叫 reset 方法重置摘...

開啟rewrite功能及檢測示例

為你的apache伺服器開啟rewrite功能 rewrite時下很火爆,能提供很多實用功能.apache安裝後預設是不支援rewrite的,可以按照下面的方法啟用 首先確保 目錄支援.htaccess,然後載入rewrite模組即可.在httpd.conf中找到directory設定,如 opti...