位置:首頁 > 軟件操作教程 > 編程開發(fā) > JavaScript > 問題詳情

JavaScript 訪問原型

提問人:劉團圓發(fā)布時間:2020-11-26

■知識點

    原型實際上就是一個普通對象,繼承了 Object類,由JavaScript自動創(chuàng)建并依附于每個函數(shù)身上。 訪問原型對象有3種方法,簡單說明如下。

    obj.__proto__

    obj .constructor.prototype 

    Object.getPrototypeOf(obj)

    其中,obj表示一個實例對象,constructor表示構(gòu)造函數(shù)。

    __proto__ (前后各兩個下劃線)是一個私有屬性,可讀可寫,與prototype屬性相同,都可以訪問原型對象。Object.getPrototypeOf(obj)是一個靜態(tài)函數(shù),參數(shù)為實例對象,返回值是參數(shù)對象的原型對象。


■實例設(shè)計

下面的代碼創(chuàng)建一個空構(gòu)造函數(shù),然后實例化,分別使用上述3種方法訪問實例對象的原型。

var F = function (){};                                //構(gòu)造函數(shù)

var obj = new F();                                        //實例化

var protol = Object.getPrototypeOf( obj );    //引用原型

var proto2 =  obj._ _proto_ _;                         //引用原型,注意,IE暫不支持

var proto3 = obj.constructor.prototype;       //引用原型

var proto4 = F.prototype;                              //引用原型

console.log( protol === proto2 );              //true

console.log( protol === proto3 );              //true

console.log( protol === proto4 );              //true

console.log( proto2 === proto3 );             //true

console.log( proto2 === proto4 );             //true

console.log( proto3 === proto4 );             //true

繼續(xù)查找其他問題的答案?

相關(guān)視頻回答
回復(0)
返回頂部