我有一个javascript对象,它已经被JSON解析使用JSON。我现在想打印对象,这样我就可以调试它(函数出了问题)。当我做以下事情时……
for (property in obj) {
output += property + ': ' + obj[property]+'; ';
}
console.log(output);
我得到了多个[object object]。我想知道我要如何打印这个才能查看内容?
我有一个javascript对象,它已经被JSON解析使用JSON。我现在想打印对象,这样我就可以调试它(函数出了问题)。当我做以下事情时……
for (property in obj) {
output += property + ': ' + obj[property]+'; ';
}
console.log(output);
我得到了多个[object object]。我想知道我要如何打印这个才能查看内容?
当前回答
如果你想调试,为什么不使用控制台调试
window.console.debug(jsonObject);
其他回答
简单的函数提醒对象或数组的内容。 用数组或字符串或对象调用此函数,它会提醒内容。
函数
function print_r(printthis, returnoutput) {
var output = '';
if($.isArray(printthis) || typeof(printthis) == 'object') {
for(var i in printthis) {
output += i + ' : ' + print_r(printthis[i], true) + '\n';
}
}else {
output += printthis;
}
if(returnoutput && returnoutput == true) {
return output;
}else {
alert(output);
}
}
使用
var data = [1, 2, 3, 4];
print_r(data);
如果你在服务器上用js工作,只要多做一点练习就可以了。这是我的ppos (pretty-print-on-server):
ppos = (object, space = 2) => JSON.stringify(object, null, space).split('\n').forEach(s => console.log(s));
当我在写服务器代码时,它创造了一些我可以真正阅读的东西。
大多数调试器控制台支持直接显示对象。只使用
console.log(obj);
根据调试器的不同,这很可能会在控制台中以折叠树的形式显示对象。您可以打开树并检查对象。
很简单:
console.log("object: %O", obj)
下面的代码将在警报框中显示完整的json数据
var data= '{"employees":[' +
'{"firstName":"John","lastName":"Doe" },' +
'{"firstName":"Anna","lastName":"Smith" },' +
'{"firstName":"Peter","lastName":"Jones" }]}';
json = JSON.parse(data);
window.alert(JSON.stringify(json));