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

当 typeof 在函数上运行时,它返回“函数”作为类型。为什么它不返回“对象”?

当 typeof 在函数上运行时,它返回“函数”作为类型。为什么它不返回“对象”?

尚方宝剑之说 2021-11-18 21:21:22
Javascript 中的函数是一个对象。在函数上运行 typeof 时,为什么它返回值“函数”而不是“对象”?var objLit = {}console.log(typeof objLit); // "object"function hello() {  console.log("hello world");}console.log(typeof hello); // "function"
查看完整描述

1 回答

?
猛跑小猪

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

因为这就是规范所说的。尽管所有函数都是对象,但在函数上使用typeof时将返回'function'而不是'object'. 见表格

val 结果类型:

Object(不实现[[Call]])“object” 

Object(实现[[Call]])“function”

(函数有内部方法 [[Call]];非函数没有。)


查看完整回答
反对 回复 2021-11-18
  • 1 回答
  • 0 关注
  • 146 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信