天天看點

面試官最喜歡問的原型鍊

原型鍊與繼承

JavaScript内置的繼承方法被稱為原型對象鍊,又稱為原型對象繼承。對于一個對象,因為它繼承了它的原型對象的屬性,是以它能夠通路這些屬性。同理,原型對象也是一個對象,它也有自己的原型對象,是以也可以繼承它的原型對象的屬性。這樣環環相扣的過程就叫做原型鍊。

使用new聲明的自定義對象(非Object)的原型對象指向那裡,原型對象的原型對象呢

使用new聲明的自定義對象(非Object)的 原型對象 指向該自定義對象的構造函數的 原型對象。

該自定義對象的構造函數的 原型對象 的 原型對象 指向 Object 的 原型對象,即 Object.prototype。

如下圖

面試官最喜歡問的原型鍊

Object的原型對象的原型對象指向哪裡

Object的原型對象的原型對象指向null。null是原型鍊的最頂層。

面試官最喜歡問的原型鍊

講一下__proto__與prototype的差別

構造函數才擁有prototype屬性,執行個體對象隻有__proto__屬性。

繼續閱讀