从这样的窗口对象创建以下函数时,
function userInfo() {};
为什么函数是对象,userInfo.constructor如何显示Function而不是Object?
使用以下内容时,它甚至会显示Function而不是Object
Function.constructor
最佳答案 userInfo.constructor是Function,因为:
> userInfo没有自己的构造函数属性.
> userInfo的[[Prototype]]内部插槽的值是Function.prototype.
> Function.prototype有一个自己的构造函数属性,其值为Function.
Function.constructor也是Function,因为同样的原因:
>函数没有自己的构造函数属性.
> Function的[[Prototype]]内部插槽的值是Function.prototype.
> Function.prototype有一个自己的构造函数属性,其值为Function.
也就是说,Function实例(如userInfo或Function本身)从Function.prototype继承构造函数属性,可用于知道它们是Function的实例.