我是来自Java背景的JavaScript的新手。我很难理解以下行为。
console.log(Object.constructor.name); // prints Function.
console.log(Object instanceof Function); // prints true since Object's constructor is Function.
这意味着Object是Function的一个实例。
console.log(Function instanceof Object); // prints true
如果Object是Function的一个实例,那么Function如何成为Object的实例?
我在最新的Google Chrome浏览器中运行了代码。
答案 0 :(得分:2)
Object
和Function
都是构造函数,因此它们是函数。
表达式Object instanceof Function
返回true
,因为Object
是一个函数,因此它是Function
类型的实例。
表达式Function instanceof Object
返回true
,因为Function
是一个函数,其类型为Function
,它继承自Object
类型。