首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >javascript Object.prototype与Anything.prototype

javascript Object.prototype与Anything.prototype
EN

Stack Overflow用户
提问于 2017-03-18 03:31:20
回答 1查看 98关注 0票数 0

我对javascript的Object.prototype和Anything.prototype感到困惑。

在chrome控制台中,我有下面的代码:

我的问题:

  1. 任何函数的默认原型都是对象的实例。是对的吗?
  2. 如果1是真的。因此,Anything.prototype和Object.prototype都是对象的实例。Object.prototype是一个具有__proto__ === null的实例。因此,Object.prototype是原型链顶部的一个特殊实例。我能这样理解吗?
EN

回答 1

Stack Overflow用户

发布于 2017-03-18 15:57:15

任何函数的默认原型都是对象的实例。

是的,任何.prototypefunction属性都包含从Object.prototype继承的对象。

代码语言:javascript
复制
Object.getPrototypeOf(Anything.prototype) === Object.prototype // true

因此,Anything.prototypeObject.prototype都是对象的实例。

我不会说Object.prototypeObject的一个实例,因为它定义了它是什么--而且它并不像您自己说的那样从Object.prototype继承:

代码语言:javascript
复制
Object.getPrototypeOf(Object.prototype) === null // true
Object.prototype instanceof Object // false, because
Object.prototype.isPrototypeOf(Object.prototype) // false (obviously)

因此,Object.prototype是原型链顶部的一个特殊实例。

是的,不过我认为每个原型链的顶端都是null

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42870134

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档