Chrome devtools控制台:查看对象的toString表示?

Mar*_*rio 6 firebug logging google-chrome google-chrome-devtools

在调试期间第二次让Firefox(FireBug)崩溃后(我在Ubuntu上),我决定使用Chrome.在大多数情况下,这很棒.我只是一个大问题.在FireBug中,当您将某些内容记录到控制台时,您始终会获得该对象的字符串表示形式.因此,在大多数原型上实现toString是很有意义的,允许在开发人员面板或控制台中的任何对象出现时随时显示最重要的信息.

如果我的代码记录以下内容:

console.log(bill_gates);
Run Code Online (Sandbox Code Playgroud)

我不希望我的对象在控制台中的第一个表示形式是:

Object
Run Code Online (Sandbox Code Playgroud)

什么时候可能是:

Person{Bill Gates, Microsoft Founder, dob: Oct 28}
Run Code Online (Sandbox Code Playgroud)

我不应该双重记录所有内容以弥补这个缺点:

console.log(bill_gates, bill_gates.toString());
Run Code Online (Sandbox Code Playgroud)

此外,当您向下钻取一个对象并发现您的对象由标记为"对象"的其他对象组成时,双重记录无效.

想象一下,去一个每个人的名字徽章都写着"人"的聚会.我想要的是关于那个人的身份的更多细节,也许是"Ned Campbell,房地产经纪人"或"Sue Bradshaw,保险销售".在FireBug中,您的对象佩戴自定义名称标记(基于您的toString实现).在Chrome中,所有对象都佩戴名称为"对象"的徽章.你必须花时间询问对象(向下钻取其属性和方法)以找出你正在处理的对象.多么浪费.

这对我来说是对其他精湛的Chrome Devtools设计的主要监督.是否有某种方式(可能是扩展)使Devtools显示对象(无论它们出现在哪里)的字符串表示形式如FireBug那样?

Ale*_*lov 1

关于您问题的第二部分:是的,有一个针对 Web Inspector 的错误(在 WebKit bugzilla 中)。请随意抄送您自己(一旦您在那里注册。)