Javascript中的这个相当于什么?
如果您使用的是Chrome,只需打开您的JavaScript控制台或开发者工具即可。
var red = {color: 'red'};
console.log(red);
像这样的事情?
console.debug(someOjbect);
JS中没有100%的等价物。但是,如果您使用Firebug的console.log(someObj),则会在控制台中看到一个对象,您可以单击该对象查看其属性。
另外,你可以编码和对象为json,它现在将显示任何属性的函数。 https://github.com/douglascrockford/JSON-js
要在'控制台'中打印,您正在讨论某些浏览器特定的内容。使用Firebug和Web Inspector,您可以使用console.log(stuff)
来写入控制台。如果您实际尝试附加到HTML正文,请使用document.write(stuff)
或document.writeln(stuff)
每个浏览器都有它自己的内部控制台。如果你使用Firefox并已安装萤火虫并启用,你应该能够做这样的事情:
console.log(someObject);
根据您需要多少个对象为做到这一点,这只是罚款太:
alert(someObject);
console.dir(object)
对象在Firebug和JS检查器中正常工作。
要注意的是并非所有的翻译支持console
了,所以平时的成语是:
if (typeof console !== 'undefined') {
console.dir(object);
}
从http://getfirebug.com/logging:
对象检查
有多少次你手写 代码将所有 的属性或中的所有元素0一个HTML片段?使用Firebug,您将不会再次编写该代码。
调用console.dir(对象)将记录对象的 属性的交互式列表,如DOM选项卡的缩小版本 。在任何HTML或 XML元素上调用 console.dirxml(element)将打印一个可爱的XML 大纲,如HTML选项卡的缩小版本 。
最快最肮脏的方法是alert(someObject)
,但它对物体无帮助。你可以写这样一个原油dir()
:
function dir(obj) {
var s = '(';
for (k in obj) {
v = obj[k];
if (typeof v != 'function') s += ""+k+":"+v", ";
}
return s+")";
}
我通常会添加`if(!console){var console = new Object(); console.log = function(){}; }“当Firebug被禁用或者浏览器不提供控制台时,我的脚本接近顶部。 – carl 2011-01-12 01:36:51
这应该是`if(!window.console)...`,否则在未定义时会出现错误。 – Phrogz 2011-01-12 03:29:45