簡體   English   中英

JavaScript原型屬性和原型鏈接

[英]JavaScript prototype property and prototype link

我了解JavaScript原型。 但是,請對原型屬性和隱藏的原型鏈接之間的區別感到困惑。 對象原型鏈接和功能原型鏈接之間也有區別?

有人可以提供一個非常基本的示例來演示相同的內容(主要是原型鏈接/鏈接...就像它是如何通過對象原型鏈接和函數原型鏈接來查找屬性的)

文檔對象模型(DOM)是JavaScript中繼承的一個很好的例子。

假設您有一個div 這是HTMLDivElement的實例。

var div = document.createElement('div');

div instanceof HTMLDivElement; // -> true

div instanceof HTMLElement; // -> true

div instanceof Element; // -> true

div instanceof Object; // -> true

div是一個Object ,包含HTMLDivElement.prototype所有方法和屬性。 它位於__proto___屬性下,但這並不意味着您應該執行div.__proto__.insertBefore來訪問insertBefore 就像其他語言中的include。

換句話說div.__proto__指向HTMLDivElement.prototype

prototype是一個對象。 因此,它可以擁有自己的__proto__指針。 在這種情況下, HTMLDivElementprototype是一個Object,並且具有一個指向HTMLElement.prototype__proto__ ,因此它包含所有方法和屬性。 它沿着這條路徑Object.prototype ,直到沒有__proto__指針和查找stup的Object.prototype。

我試圖避免使用new關鍵字來解釋這一點。 希望對您有幫助...

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM