为什么typeof函数返回" function"?

时间:2017-02-26 10:53:58

标签: javascript object types typeof

如果数组和函数都是对象子类型,那么为什么typeof function返回"function"typeof array返回"object"

2 个答案:

答案 0 :(得分:4)

因为the specification在与实现typeof 的对象(即函数)进行交互时[[Call]]定义了不同的行为。

答案 1 :(得分:0)

非常难看,但答案正确:因为ECMAScript规范是这样说的。 请记住,在低级别,每个数组基本上只是一个具有“长度”属性的对象。

如果要检查给定对象是否实际上是一个数组,请使用Array.isArray