gpt4 book ai didi

javascript - “function” 是 JavaScript 类型吗?

转载 作者:行者123 更新时间:2023-12-03 06:53:49 26 4
gpt4 key购买 nike

“函数”是 JavaScript 类型吗?
例如:

console.log(typeof alert) // returns function
这表明“功能”确实是一种类型
然而,在 this ECMAscript 文档说:

The ECMAScript language types are Undefined, Null, Boolean, String, Symbol, Number, BigInt, and Object”.


有人可以向我解释一下吗?
提前致谢 :)

最佳答案

The behaviour of the typeof operator is documented in section 12.5.5 ,其中有一个表格可以回答您的问题。
它说(意译):

  • 给定表达式 typeof val :
  • valObject它实现了 [[Call]]接口(interface)然后typeof返回字符串 'function'
  • valObject没有实现 [[Call]]然后 typeof返回字符串 'object' .


  • 因此, function不是一个单独的 ECMAScript 类型,而实际上是 Object 的一个特化。 -类型。

    请注意,ECMAScript 规范中的信息非常技术性和狭义,主要针对 ECMAScript 引擎和工具的实现者 - 虽然它对使用 JS 作为语言的开发人员很有用,但它并不适合初学者或作为语言的介绍 - 或解释基础知识。

    “函数对象”的精确定义 is explained in 6.1.7.2 .

    关于javascript - “function” 是 JavaScript 类型吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64302582/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com