javascript - 为什么 toString() 和 this.toString() 在 Chrome 的控制台中产生不同的结果?

标签 javascript google-chrome

现在这根本没有任何实际意义,但我对我偶然发现的这个小怪癖很好奇。

基本上,在 Chrome 的开发者控制台中,这

toString()

返回[object Object],而这个

this.toString()

返回 [object DOMWindow]

据我所知,这只发生在控制台,可以看出on this jsFiddle .有人在 ##javascript 上找到了 this link解释函数的来源。但是,它没有解释在控制台内部或外部使用时行为中存在的差异。

那么为什么 toString()this.toString() 在 Chrome 的控制台中产生不同的结果?

最佳答案

WebKit 碰巧在控制台中为全局调用使用了错误的上下文。

(Chrome 14):

> this
DOMWindow
> this.toString()
"[object DOMWindow]"
> toString()
"[object Object]"
> valueOf()
CommandLineAPI

我认为这已通过 here 得到修复

关于javascript - 为什么 toString() 和 this.toString() 在 Chrome 的控制台中产生不同的结果?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8944233/

相关文章:

javascript - 即使具有正确的 cmd 和框架兼容版本也无法构建 sencha 应用程序

google-chrome - Google Chrome 在 ubuntu 上显示 "your connection to this site is not secure",可以安全使用吗?

html - 背景图片不通过 HTTPS 加载

javascript - 使用循环将输入转换为数组中的对象

Javascript indexOf 没有按预期工作

javascript - Elfinder如何自定义菜单

javascript - 使用 JS 切换显示/隐藏

css - 预加载关键帧中指定的 css 背景图像

html - 导航链接在 Chrome 和 Firefox 中不起作用

ASP.NET Webforms 不为 Chrome/iOS 呈现回发 JavaScript 函数