当我不知道其中有什么内容时,如何阅读Javascript对象?
我一直在研究node.js并且有一个变量我真的不知道它里面有什么。当我尝试sys.puts时:
sys.puts(headers) // returns [object Object]
如果在javascript中有类似print_r的东西,那就没问题了。
答案 0 :(得分:4)
您可以使用
循环其属性for (var item in headers)
{
// item is the name of the property
// headers[item] is the value
}
http://www.jsfiddle.net/gaby/CVJry/3/处的示例(需要控制台)
如果要将结果限制为直接属性(不是通过原型链继承),那么也使用hasOwnProperty
方法。
答案 1 :(得分:2)
大多数Web浏览器都可以使用JSON对象来打印对象的内容,
writeln(JSON.stringify(your_object));
如果失败,您可以创建自己的字符串;
var stringify = function(current) {
if (typeof current != 'object')
return current;
var contents = '{';
for (property in current) {
contents += property + ": " + stringify(current[property]) + ", ";
}
return contents.substring(0, contents.length - 2) + "}";
}
var my_object = {my_string: 'One', another_object: {extra: 'Two'}};
writeln(stringify(my_object));
答案 2 :(得分:1)
您可以循环浏览对象以了解其属性&他们的价值观
假设您的对象是
var emp = {
name:'abc',
age:12,
designation:'A'
}
现在您可以在JS
中阅读其详细信息for(property in emp ){
alert(emp[property] + " " +property);
}
如果您在Firefox浏览器中添加了firebug,请打开它&在Firebug控制台的JS或JS窗口中编写。
console.log(a);
答案 3 :(得分:0)
如果您需要它来检查对象中的内容(即,由于某种原因它与您相关,但您的脚本中不需要该功能),您可以使用Firebug获取对象并准确检查它里面有什么。