我试图了解以下代码段:
> Object instanceof Function
true
> Function instanceof Object
true
非常令人惊讶,它有两种方式。
第一行。 Object
是一个构造函数,因为我可以执行new Object()
,所有构造函数都是JS中的函数。所以第一个是满意的。
第二行。 Function
是函数构造函数。但是函数也是JS中的一等公民,因此所有函数都是JS中的对象。
因此,无论Object
的实例是什么,它都是Function
的实例,反之亦然。
这是否意味着,JavaScript核心中的基类型中存在循环原型继承,Object
和Function
之间?我的理解是正确的还是我在某个地方犯了错误?