在 Chrome 中将对象记录到控制台的解决方法
如果执行此代码:
var foo = {bar: 'baz'};
window.console.log(foo);
foo.bar = 'bla';
展开对象后控制台会显示以下内容:
(记录对象和数组时,这不是运行- 记录的时间值)
此错误已在一年前记录:
http://code.google.com/p/chromium/issues/detail?id=50316
是否有在 Chrome 中记录对象的解决方法?
If you execute this code:
var foo = {bar: 'baz'};
window.console.log(foo);
foo.bar = 'bla';
The console shows this after expanding the object:
(when logging objects and arrays, it's not the run-time value that's recorded)
This bug was documented over a year ago:
http://code.google.com/p/chromium/issues/detail?id=50316
Is there a workaround for logging objects in Chrome?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
我只是在需要时使用
JSON.stringify
。不知道它是否适合您,但它对于调试目的来说既简单又有效。这对于其中包含函数引用的对象来说没有什么好处,所以如果您需要,我会考虑使用对象的深层副本(您可以使用 jQuery 优秀的
extend
方法)或滚动您自己的日志记录函数将递归地循环遍历对象并将其打印出来。I just use
JSON.stringify
when i need it. Don't know if it will do it for you, but it is easy and effective for debugging purposes.This is no good for objects with function references in it tho, so if you need that i would consider using either a deep copy of the object (you can use jQuery's excellent
extend
method) or roll you own logging function that will loop recursively over the object and print it out.您可以使用专用的日志记录库,例如我自己的 log4javascript。
You could use a dedicated logging library such as my own log4javascript.