如何以编程方式美化JSON?

时间:2010-04-10 20:30:53

标签: javascript json code-formatting pretty-print

你知道JavaScript的任何“JSON Beautifier”吗?

发件人

{"name":"Steve","surname":"Jobs","company":"Apple"}

{
  "name" : "Steve",
  "surname" : "Jobs",
  "company" : "Apple"
}

示例

some_magic(jsonObj); // return beautified JSON

2 个答案:

答案 0 :(得分:625)

程序化格式化解决方案:

许多现代浏览器(包括IE8)支持的JSON.stringify方法可以输出美化的JSON字符串:

JSON.stringify(jsObj, null, "\t"); // stringify with tabs inserted at each level
JSON.stringify(jsObj, null, 4);    // stringify with 4 spaces at each level
Demo: http://jsfiddle.net/AndyE/HZPVL/

此方法也包含在json2.js中,用于支持旧版浏览器。

手动格式化解决方案

如果您不需要以编程方式执行此操作,请尝试JSON Lint。它不仅会美化你的JSON,还会同时验证它。

答案 1 :(得分:2)

对于开发人员更频繁地破解(缩小或混淆)JavaScript,这可能是有趣的。

您可以在5分钟内构建自己的CLI JavaScript美化器,并在命令行上使用它。你需要Mozilla Rhino,一些在线可用的JS美化器的JavaScript文件,小黑客和一个脚本文件来包装它。

我写了一篇文章解释了这个程序:Command-line JavaScript beautifier implemented in JavaScript