1.原型對象
當把一個函數(shù)作為構造函數(shù) (理論上任何函數(shù)都可以作為構造函數(shù)) 使用new創(chuàng)建對象的時候,那么這個對象就會存在一個默認的不可見的屬性,來指向了構造函數(shù)的原型對象。 這個不可見的屬性我們一般用 [[proto]] 來表示,只是這個屬性沒有辦法直接訪問到。

6663492.png

Paste_Image.png
2.prototype屬性
構造函數(shù)的默認屬性,它指向了函數(shù)的原型對象
3.constructor屬性
原型對象的默認屬性,它又指向了構造函數(shù)本身
給函數(shù)的prototype的屬性,賦值一個新的原型對象
修正constructor

Paste_Image.png
4._proto_ 屬性(注意:左右各是2個下劃線)
通過new得出來的 p1 的屬性,它指向了構造函數(shù)的原型對象
5.hasOwnProperty() 方法
測試new出來的p1有沒有這個屬性

Paste_Image.png
6.in操作符
用來判斷一個屬性是否存在于這個對象中。

Paste_Image.png
7.綜合一下判斷屬性存在于哪里

Paste_Image.png

Paste_Image.png
8.組合模式
原型 + 構造
在構造函數(shù)內添加屬性
在原型上定義方法

Paste_Image.png