gpt4 book ai didi

javascript - 什么是 "[object type]"

转载 作者:行者123 更新时间:2023-11-28 18:29:21 25 4
gpt4 key购买 nike

toString() 返回“[object type]”,因此 toString.call(new Date) 返回 [object Date],并且toString.call(new String)返回[object String]。我很好奇“[object type]”的本质是什么:它不可能是一个数组,正如使用 [] 所暗示的那样;如果它是一个对象,那么 {type: object} 不是一种信息更丰富的语法吗?如果它是一个字符串,为什么不直接返回“type”,其中 type 是对象的类型,例如 DateString

最佳答案

这正是 javascript 语言规范所说的 toString 方法应该做的事情

  1. 如果 this 值未定义,则返回“[object Undefined]”。如果该值为null,返回“[object Null]”。
  2. 令 O 为调用 ToObject 的结果,并将 this 值传递为论证。
  3. 设 class 为 O 的 [[Class]] 内部属性的值。
  4. 返回连接结果的字符串值三个字符串“[object”、class 和“]”。

oriol指出 ECMASCRIPT 2015(也称为 ES6)使 toString 方法变得更加复杂。它找出它处理的对象类型的方式有点冗长。你可以看到新的规范here Source

关于javascript - 什么是 "[object type]",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38415264/

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