使用 getJSON 将 JSON 结构输出到 console.log()

45

我有以下代码用于获取JSON数据:

$.getJSON( "assessments", function( assessments ) {
    console.log(assessments);
        });

我已经完全获取了所有数据,但控制台输出为:

[Object, Object, Object, Object, Object, Object, Object, Object, Object]
{"key1": "value1", "key2": "value2"}
我希望以这种JSON结构输出数值:
{"key1": "value1", "key2": "value2"}
[
{
    "id": 1,
    "person": {
        "personId": "person1",
        "firstName": "Pactric"
    },
    "manager": {
        "managerId": "manager1"
    },
    "state": {
        "stateId": 1,
        "description": null
    },
    "comments": null
}
]
如何在控制台(console)使用console.log()方法打印出与上面JSON结构完全相同的数据? 我正在使用$.getJSON而不是$.ajax来完成此应用程序。
2个回答

113

尝试使用

console.log(JSON.stringify(assessments));

现在它说我必须等待10分钟才能关闭您的答案,暂时无法关闭。我会在10分钟后关闭它 :-) - jeewan

36

使用缩进格式化JSON:

$.getJSON( "assessments", function( assessments ) {
    console.log(JSON.stringify(assessments, undefined, 2))
});

JSON.stringify(value[, replacer [, space]]) 中的 space 参数是缩进空格数。MDN


1
这应该是答案...它以一些令人惊叹的“详细”模式输出JSON。谢谢! - Derek Foulk
1
@derekmx271 - 谢谢,问题最终是关于“以与上述JSON结构完全相同的方式显示”,这样做可以添加空格和换行符,并以整洁易读的格式输出JSON。 - adeneo
MDN文档:https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/JSON/stringify - Jazzy
@s.matthew.english $ 取代了旧的 jQuery。过去你需要写成 "jQuery.getJSON()" 现在你只需输入 "$.getJSON()"。我认为它可以被视为一个命名空间,但它也增强了 jQuery 的流行特点...简洁性。 - DavidG

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接