---
# System prepended metadata

title: javascript 原型鏈

---

# javascript 原型鏈

![](https://i.imgur.com/JmM1z5b.png)

* [[Prototype]] Object 內部的特殊屬性，用來將物件寫入到 prototype。

* __proto__ 由ES6 開始成為Object的原生屬性，直接對 [[Prototype]] 進行讀寫。

* prototype 是一個Object，當 new 一個 instance 時會被用作指向 __proto__作為 instance 繼承的屬性。

* prototype 只存在於 constructor functions，在 instance 上并不存在。相反__proto__ 則出現在所有物件。


---


1. 構造函數
2. prototype，__proto__
3. 繼承

構造函數(constructor)，是一個function裡面用到this來設定屬性(property)，能被實例(new)出來

