久久r热视频,国产午夜精品一区二区三区视频,亚洲精品自拍偷拍,欧美日韩精品二区

您的位置:首頁技術文章
文章詳情頁

javascript - 如何理解prototype和__proto__的區別呢?

瀏覽:144日期:2023-04-16 13:32:10

問題描述

如何理解prototype和__proto__的區別呢?

問題解答

回答1:

構造函數訪問原型時,通常通過prototype來訪問,例如我們往原型上添加方法

Person.prototype.getName = function() {}

當new出來的實例訪問原型時,在一些支持的瀏覽器中

function Person() {}var p1 = new Person();p1.__proto__ === Person.prototype // true

結論:prototype是作為構造函數去訪問原型,而__proto__是作為實例去訪問原型。當自身身份不一樣,即使一個方法同時調用兩者時,訪問到的可能是不同的原型。

回答2:

每個對象都有__proto__,而prototype只有Function有;

回答3:

也許你也可以看看這些:

/a/11...

https://developer.mozilla.org...

https://developer.mozilla.org...

回答4:

prototype 是構造函數的一個屬性,__proto__ 是實例的一個屬性。使用構造函數生成的實例的 __proto__ 屬性會指向構造函數 prototype 屬性所指向的對象。

嗯,就是這樣。

回答5:

從作用上來說:prototype 確定了當利用構造器或字面量形式定義對象時 proto 的默認值

proto 是 js 引擎原型鏈搜索的依據

所以重點在于當你要更改原型鏈的搜索方式時,可以通過更改構造器 prototype 來改變后續所有實例化對象的原型鏈查找方式,利用 proto 來修改單個對象的原型鏈查找.

標簽: JavaScript
相關文章:
主站蜘蛛池模板: 游戏| 丰台区| 宕昌县| 临邑县| 库尔勒市| 绥江县| 瑞丽市| 荣昌县| 杭州市| 美姑县| 湖北省| 陵川县| 五华县| 孝昌县| 巴马| 宁远县| 屏东市| 齐河县| 米易县| 壶关县| 莆田市| 揭东县| 六枝特区| 高淳县| 溧水县| 东乡县| 台前县| 巴中市| 玉树县| 华容县| 钟祥市| 正安县| 炎陵县| 获嘉县| 松阳县| 东港市| 正宁县| 龙陵县| 武川县| 寻甸| 浦江县|