原型的称呼问题

prototype 这个属性, 称之为原型属性, 或者显示原型
proto 这个属性, 称之为原型对象, 或者隐式原型

这个说法对吗?

我觉得你可能说的是构造器原型Object.prototype和内部原型Object.prototype.__proto__
一个 Object 的 __proto__ 属性和自己的内部属性 [[Prototype]] 指向一个相同的值 通常称这个值为原型。
[[Prototype]]通常是我们所说的原型链,或者说 Object.prototype 属性表示对象 Object 的原型对象。

可以 参考这里

没必要区分什么显式,隐式,只要记住,__proto__是每个对象都拥有的,但一般代码中不用,prototype只有函数对象拥有,代码中用的多。
另外,不管是prototype还是__proto__本身都是对象(null暂不考虑),“原型属性”“原型对象”的称呼反而容易产生误解。

发表评论

电子邮件地址不会被公开。 必填项已用*标注