什么是 JSON 格式化?
JSON 格式化(也称「美化」或 Pretty Print)是指在 JSON 文本中添加适当的缩进和换行,使嵌套结构一目了然。API 返回的 JSON 通常是压缩的单行格式,直接阅读非常困难。
格式化后的 JSON 示例:
{
"name": "HiJSON",
"version": "1.0",
"features": ["format", "minify", "tree"]
}
对比压缩格式 {"name":"HiJSON","version":"1.0","features":["format","minify","tree"]},格式化版本更便于人工阅读和排查问题。
什么是 JSON 压缩?
JSON 压缩(Minify)是格式化的逆操作:去除所有不必要的空格、换行和缩进,生成体积最小的 JSON 字符串。压缩后的 JSON 在语义上与原始数据完全等价,但体积更小,适合:
- HTTP 请求/响应体,减少网络传输量
- 日志存储,节省磁盘空间
- 嵌入 HTML 或 JavaScript 中,减少页面体积
- 数据库或缓存中存储 JSON 字段
何时格式化,何时压缩?
| 场景 | 建议 |
|---|---|
| 调试 API 响应 | 格式化 — 便于阅读嵌套结构 |
| Code Review 配置文件 | 格式化 — 便于发现差异 |
| 生产环境 API 传输 | 压缩 — 减少带宽 |
| 前端打包嵌入 | 压缩 — 减小 bundle 体积 |
| Git 版本控制 | 格式化 — 便于 diff 对比 |
用 HiJSON 格式化和压缩
- 打开 HiJSON 首页,在左侧输入框粘贴 JSON 文本或拖拽 .json 文件。
- 点击「格式化」按钮,输入框中的 JSON 将自动添加 2 空格缩进。
- 点击「压缩」按钮,JSON 将变为单行最小格式。
- 点击「解析」(或 Ctrl+Enter),右侧树形视图将展示完整结构,便于进一步浏览和编辑。
在树形视图中选中任意节点后,详情面板提供「复制格式化」和「复制压缩」两种复制方式,方便粘贴到代码或文档中。
常见 JSON 语法错误
格式化或解析前,JSON 必须是合法语法。以下是开发中最常见的错误:
- 末尾多余逗号 — JSON 不允许对象或数组最后一个元素后加逗号。
{"a": 1, "b": 2,}✗ - 使用单引号 — JSON 标准要求字符串必须使用双引号。
{'name': 'test'}✗ - 未转义的特殊字符 — 字符串中的换行、制表符、双引号需转义。
{"msg": "line1\nline2"}✓ - 混入注释 — 标准 JSON 不支持
//或/* */注释(JSONC 除外)。 - NaN / Infinity — JSON 不支持 JavaScript 的 NaN 和 Infinity,应使用 null 或字符串。
HiJSON 在解析失败时会在输入框下方显示具体错误信息,帮助快速定位问题行。
格式化最佳实践
- 统一缩进:团队内约定 2 空格或 4 空格,HiJSON 默认使用 2 空格。
- 键名排序:对于配置文件,可按字母序排列键名便于 diff(HiJSON AI 功能可辅助完成)。
- 大文件处理:超过 1MB 的 JSON 建议使用文件拖拽导入,避免浏览器粘贴板限制。
- 敏感数据:HiJSON 在本地处理数据,不会上传至服务器,适合处理含密钥的调试数据。