请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

第五分7秒的Function, class的实例有prototype以及__proto__属性

实例对象的prototype为undefined

图片描述
所以是不是实例对象上只有__proto__属性

正在回答 回答被采纳积分+3

1回答

Cloud 2022-04-20 11:37:52

首先要理解__proto__的函数,其是构造函数的原型。

普通的对象,Array, Function等对象 也有构造函数。

也有些对象是没有__proto__属性的,比如Object.create(null)创建的对象。

https://img1.sycdn.imooc.com//szimg/625f7ee4096b8dbf05820244.jpg

0 回复 有任何疑惑可以回复我~
  • 提问者 软球球 #1
    再问下老师 实例的prototype属性为undefined,是不是实例没有这个属性,属性访问到原型是通过__proto__
    回复 有任何疑惑可以回复我~ 2022-04-20 12:29:40
  • Cloud 回复 提问者 软球球 #2
    下面的理解不一定准,可能更方便你理解:
    实例是被构造出来的,可以构造实例的是Function和class, 函数和class才有prototype, prototype设计之处就是为了复用。
    
    __proto__访问的是构造函数的原型,现在有多种方式访问原型,比如:
    
    Object.getPrototypeOf , Reflect.getPrototypeOf。
    回复 有任何疑惑可以回复我~ 2022-04-20 16:31:59
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信