?結論:
__proto__
和constructor
屬性是對象所獨有的;- ?
prototype
屬性是函數所獨有的,由于函數也是一種對象,所以函數也擁有__proto__
和constructor
屬性; __proto__
屬性的作用就是當訪問一個對象的屬性時,如果該對象內部不存在這個屬性,那么就會去它的?__proto__
屬性所指向的那個對象(父對象)里找,一直找,直到?__proto__ 屬性的終點 null , 再往上找就相當于在 null 上取值,會報錯。通過?__proto__ 屬性將連接起來的這條鏈路即我們所謂的“原型鏈”。prototype
屬性的作用就是讓該函數所實例化的對象們都可以找到公用的屬性和方法,即?f1.__proto__ === Foo.prototype。- constructor 屬性的含義就是指向該對象的函數,所有函數(此時看成對象了)最終的構造函數都指向 Function 。
?
?
?
參考文章:
- 原文:?幫你徹底搞懂JS中的prototype、__proto__與constructor(圖解)_碼飛_CC的博客-CSDN博客_js proto
- 一張圖理解prototype、proto和constructor的三角關系
- prototype和__proto__的關系是什么?
?
?