Object.prototype.toString.call与字符串的结果
result of Object.prototype.toString.call with string
我想用Object.prototype.toString.call
解决一个技术问题。在javascript中,当您调用函数"call"
时,第一个参数是对"this"
或您正在处理的对象的引用。所以我原以为Object.prototype.toString.call("aaa")
会产生"aaa",就像您调用"aaa".toString()
时一样。
相反,它产生
"[object String]"。
为什么?
Object.prototype.toString
的行为。
值得注意的步骤是
3) 设O为ToObject(此值)
7) 否则,如果O是一个奇异的String对象,则让内置标签为"String"
19) 返回字符串,该字符串是连接"[object"、标记和"]"的结果。
正如您所看到的,字符串文字(它是一个基元类型,不是对象)首先被转换为字符串对象,然后被标记为String
,然后返回输出[object String]
。
参考文献:
- 19.1.3.6-
Object.prototype.toString
相关文章:
- Regex模式匹配,从Javascript中的字符串中提取时间,结果出乎意料
- 将敲除绑定应用于模板,并将结果作为字符串获取
- 将Javascript Regex结果转换为字符串(?)
- Geoplugin字符串结果为德语单词/语言
- Javascript:拆分字符串,但仅使用 1 个结果
- 解析JSON字符串返回未定义的结果
- 在谷歌地图API自动完成中显示不匹配字符串的结果
- 将字符串结果返回到表单元格中的新行中
- mongodb-mongoose-find-如何获得适用的字符串作为结果
- 自定义查询字符串分析器返回不正确的结果
- 如何从数据库中获取JSON字符串结果以供以后使用
- 使用$se.trustAsHtml呈现字符串返回未定义的结果
- 调用.ajax方法得到未定义的json结果,返回json格式列表<字符串>
- 如何获取控制台.log输出 getter 结果而不是字符串“[Getter/Setter]”
- getElementById 给出结果和字符串
- Json字符串结果计数与JavaScript
- 使用AngularJs显示标签中函数的字符串结果
- 我可以调用什么来过滤字符串结果?
- 无法获取replaceWith的字符串结果
- 将字符串/结果从JS发送到HTML页面