JSON格式化完整教程:验证、美化与常见错误
最后更新:2026年5月 · 阅读时间:8分钟
什么是JSON?
JSON(JavaScript Object Notation)是一种轻量级的数据交换格式。它基于JavaScript语法,但独立于编程语言,几乎所有现代语言都支持JSON。
JSON有两种结构:
- 对象:键值对集合,用
{}包裹,如{"name": "张三", "age": 25} - 数组:有序值列表,用
[]包裹,如[1, 2, 3]
为什么需要格式化?
从服务器返回的JSON通常是压缩的(一行),难以阅读:
{"name":"张三","age":25,"address":{"city":"北京","zip":"100000"},"hobbies":["编程","阅读"]}
格式化后清晰易读:
{
"name": "张三",
"age": 25,
"address": {
"city": "北京",
"zip": "100000"
},
"hobbies": ["编程", "阅读"]
}
JSON格式化方法
1. 在线工具(最快)
使用我们的在线JSON格式化工具,粘贴JSON即可一键格式化。
2. 命令行
# 使用 Python
echo '{"name":"test"}' | python -m json.tool
# 使用 jq
echo '{"name":"test"}' | jq .
# 使用 Node.js
echo '{"name":"test"}' | node -e "console.log(JSON.stringify(JSON.parse(require('fs').readFileSync(0)),null,2))"
3. 编辑器插件
- VS Code:内置JSON格式化(Shift+Alt+F)
- Sublime Text:安装"Pretty JSON"插件
- Vim:使用
:%!python -m json.tool
常见JSON错误及修复
1. 尾部逗号
// ❌ 错误:最后一个元素后有逗号
{"name": "张三",}
// ✅ 正确:去掉尾部逗号
{"name": "张三"}
2. 单引号字符串
// ❌ 错误:JSON只用双引号
{'name': '张三'}
// ✅ 正确:使用双引号
{"name": "张三"}
3. 注释
// ❌ 错误:JSON不支持注释
{"name": "张三" /* 用户名 */}
// ✅ 正确:移除注释
{"name": "张三"}
4. 未引用的键
// ❌ 错误:键必须用双引号
{name: "张三"}
// ✅ 正确:键加双引号
{"name": "张三"}
提示:使用我们的JSON格式化工具可以自动检测这些错误并定位到具体行号。
相关工具
常见问题
JSON和XML有什么区别?
JSON更轻量、更易解析,适合API数据传输。XML更冗长但支持注释和命名空间,适合配置文件和文档标记。
JSON支持注释吗?
标准JSON不支持注释。如果需要注释,可以使用JSONC(带注释的JSON)或JSON5格式。
JSON最大可以多大?
理论上没有限制,但大多数解析器有内存限制。实际建议单个JSON文件不超过50MB。