當我不知道里面有什麼時,我該如何閱讀Javascript對象?閱讀Javascript對象
我一直在研究node.js,並有一個變量,我真的不知道里面有什麼。當我嘗試使用sys.puts時:
sys.puts(headers) // returns [object Object]
如果在JavaScript中有類似print_r的東西,那本來就不錯。
當我不知道里面有什麼時,我該如何閱讀Javascript對象?閱讀Javascript對象
我一直在研究node.js,並有一個變量,我真的不知道里面有什麼。當我嘗試使用sys.puts時:
sys.puts(headers) // returns [object Object]
如果在JavaScript中有類似print_r的東西,那本來就不錯。
大多數Web瀏覽器可以使用JSON對象來打印對象的內容,
writeln(JSON.stringify(your_object));
如果失敗,你可以創建自己的stringifier;
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));
你也可以遍歷其屬性與http://www.jsfiddle.net/gaby/CVJry/3/
for (var item in headers)
{
// item is the name of the property
// headers[item] is the value
}
例如(需要控制檯)
如果你想限制結果的直接性(不是通過原型鏈繼承)然後使用hasOwnProperty
方法。
不應該將'item'變量聲明在某處嗎? – 2010-12-10 14:09:18
@Šime,它應該..添加:) – 2010-12-14 14:38:24
可以遍歷你的對象以瞭解它的性能&他們的價值觀
假設你的目標是
var emp = {
name:'abc',
age:12,
designation:'A'
}
現在你可以在JS
閱讀其詳細信息for(property in emp){
alert(emp[property] + " " +property);
}
如果你在Firefox瀏覽器中添加螢火蟲,打開它&在Firebug控制檯的JS或JS窗口中寫入。
console.log(a);
如果你需要它只是爲了檢查什麼在一個對象(即,它是與你有關的由於某種原因,但你並不需要在你的腳本功能),你可以使用Firebug拿到對象並檢查它究竟是什麼。
我正在在終端上工作。 – 2010-12-13 12:39:55
您可以嘗試將其轉換爲JSON字符串... – 2010-12-10 13:30:47