Proto 与 Prototype:澄清区别
在 JavaScript 中,理解 proto 原型对于导航面向对象至关重要
提供的图表说明了对象原型的层次结构,突出显示每个对象都有一个原型。然而,关键的区别在于它们的角色和关系。
Proto
每个对象都有一个名为 __proto__ 的内部属性,它包含对其原型的引用。- 此原型用作查找期间用于继承的实际对象
- 例如, (new Foo).__proto__ 将指向 Foo.prototype。
-
原型
原型是构造函数的显式属性,引用用于构造的对象- proto 创建新对象时。
它提供了一种在同一类型的对象之间共享属性和方法的机制。- 例如,Foo.prototype 提供了蓝图使用 Foo 构造函数创建的所有对象,例如 (new Foo).__proto__.
-
密钥差异:
属性 |
原型
Property |
Proto |
Prototype |
Access |
Internal property |
Explicit property of constructor function |
Role |
Lookup chain for inheritance |
Template for proto creation |
Value |
Points to the prototype |
Used to construct proto
|
|
原型 |
访问 |
内部属性 |
构造函数的显式属性函数 |
角色 |
继承的查找链 |
proto创建的模板 | tr>
Value |
指向原型 |
用于构造proto
|
综上所述,proto代表查找链中对象的继承原型,而prototype是在对象构造期间用于初始化 proto 的模板。理解这种区别对于 JavaScript 中有效的面向对象编程至关重要。
以上是JavaScript 中的原型与原型:主要区别是什么?的详细内容。更多信息请关注PHP中文网其他相关文章!