Possible Duplicate:
How can I beautify JSON programmatically?

我知道如何使用JSON.stringify从对象生成JSON,或者在我的例子中使用Google代码(https://github.com/krinkle/jquery-json)中方便的jQuery-json.

现在,这可以很好地工作,但是输出对于人类来说是很难读懂的.有没有简单的方法/函数/任何方法来输出格式整齐的json文件?

这就是我的意思:

JSON.stringify({a:1,b:2,c:{d:1,e:[1,2]}}); 

给予..

"{"a":1,"b":2,"c":{"d":1,"e":[1,2]}}"

我想要这样的东西:

{
 "a":1,
 "b":2,
 "c":{
    "d":1,
    "e":[1,2]
 }
}

例如,添加了换行符和制表符.更大的文档更容易阅读.

我希望在理想情况下做到这一点,而不添加任何大型库——例如,不是prototype或YUI或其他什么.

推荐答案

JSON.stringify需要更多的optional arguments.

try :

 JSON.stringify({a:1,b:2,c:{d:1,e:[1,2]}}, null, 4); // Indented 4 spaces
 JSON.stringify({a:1,b:2,c:{d:1,e:[1,2]}}, null, "\t"); // Indented with tab

发件人:

How can I beautify JSON programmatically?

应该可以在现代浏览器中工作,如果您需要为不支持JSON助手函数的浏览器提供后备,则可以将其包含在json2.js中.出于显示目的,将输出放在<pre>标记中以显示换行符.

Javascript相关问答推荐

如何制作删除按钮以从列表中删除该项目所属的项目?

为什么子组件没有在reaction中渲染?

GrapeJS -如何保存和加载自定义页面

Phaser 3 console. log()特定游戏角色的瓷砖属性

使搜索栏更改语言

如果Arrow函数返回函数,而不是为useEffect返回NULL,则会出现错误

如何迭代叔父元素的子HTML元素

如何在使用rhandsontable生成表时扩展数字输入验证?

查询参数中的JAVASCRIPT/REACT中的括号

TinyMCE 6导致Data:Image对象通过提供的脚本过度上载

删除加载页面时不存在的元素(JavaScript)

Next.js中的服务器端组件列表筛选

JavaScript:如果字符串不是A或B,则

更改agGRID/Reaction中的单元格格式

Next.js无法从外部本地主机获取图像

自动滚动功能在当前图像左侧显示上一张图像的一部分

使用createBrowserRoutVS BrowserRouter的Reaction路由

在ChartJS中使用spanGaps时,是否获取空值的坐标?

JQuery使用选项填充HTMLSELECT并设置默认结果,默认结果显示为空

无法向甜甜圈图表上的ChartJSImage添加可见标签