为了账号安全,请及时绑定邮箱和手机立即绑定

有没有童鞋遇到过同样的问题:这个输出结果为什么是这样?求解答!

有没有童鞋遇到过同样的问题:这个输出结果为什么是这样?求解答!

大话西游666 2019-09-05 09:06:40
Function.prototype.a=1;Object.prototype.b=2;functionA(){}vara=newA();console.log(a.a,a.b);//undefined,2console.log(A.a,A.b);//1,2
查看完整描述

2 回答

?
胡说叔叔

TA贡献1804条经验 获得超8个赞

a不是function当然a.a是undefineda是对象,a.b是2
A是function所以自身a是1function也是对象的一种,所以自身b是2
                            
查看完整回答
反对 回复 2019-09-05
?
Helenr

TA贡献1780条经验 获得超4个赞

A.__proto__===Function.prototype
A.__proto__.__proto__===Function.prototype.__proto__===Object.prototype
A.prototype!=A.__proto__
a.__proto__===A.prototype
a.__proto__.__proto__===A.prototype.__proto__===Object.prototype
一般情况下,a=newA之后,a.__proto__===A.prototype。
在定义函数时,如果这个函数可以用做构造函数,它会自动生成一个prototype属性,这个属性的值是一个普通的对象。
                            
查看完整回答
反对 回复 2019-09-05
  • 2 回答
  • 0 关注
  • 267 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号