JSON 压缩(Minify)和 JSON 格式化(Beautify)是两个方向相反的操作,很多新手分不清。一句话概括:压缩是去掉空格换行减小体积,格式化是加上缩进换行便于阅读。
格式化(也叫美化、美化输出)会把挤在一起的 JSON 展开,加上缩进和换行,让层级结构一目了然:
格式化前(一行,难读):
{"name":"Tom","tags":["a","b"],"addr":{"city":"北京"}}
格式化后(缩进清晰):
{
"name": "Tom",
"tags": ["a", "b"],
"addr": {
"city": "北京"
}
}
用途:调试接口、阅读返回数据、写文档时用格式化。
压缩(也叫最小化)会删除所有不必要的空格、换行,把 JSON 挤成一行:
{"name":"Tom","tags":["a","b"],"addr":{"city":"北京"}}
用途:接口传输、存储、减小文件体积。压缩后的 JSON 体积通常能减少 30%-50%,在网络传输时能明显提速。
| 格式化 | 压缩 | |
|---|---|---|
| 方向 | 加缩进换行 | 去空格换行 |
| 体积 | 变大 | 变小 |
| 可读性 | 高 | 低 |
| 用途 | 开发调试 | 生产传输 |
| 数据内容 | 完全不变 | 完全不变 |
注意:两个操作都不改变数据本身,只是换了个排版方式。所以格式化后再压缩,得到的就是最初的数据。
在 JSON 在线格式化工具 里,这两个操作都是一键完成:
Ctrl+Shift+F):展开加缩进。Ctrl+Shift+M):压成一行。数据完全在浏览器本地处理,不会上传服务器。