{ } JSON 格式化
美化、压缩、校验一步到位,数据不上传。
如何使用JSON 格式化
把 JSON 文本粘贴进来,点「美化」即可缩进排版,也可反向压缩成单行,或检查语法是否合法。
计算原理与公式
JSON(JavaScript Object Notation)是一种轻量级文本数据交换格式。合法 JSON 有严格规则:键名必须用双引号、不能用单引号;不允许尾随逗号;所有值必须是对象、数组、字符串、数字、布尔值或 null 六种类型之一。常见错误是 JavaScript 习惯的单引号与注释,而标准 JSON 都不支持。
适用场景
调试接口返回数据、阅读配置文件、格式化日志、排查前后端联调时的数据格式问题。
计算示例
这段 JSON 看起来像对的,但实际非法:
| 写法 | 是否合法 | 原因 |
|---|---|---|
| {'name':'test'} | ❌ 非法 | 单引号,JSON 要求双引号 |
| {"name":"test",} | ❌ 非法 | 尾随逗号 |
| {"name":"test"} | ✅ 合法 | 正确格式 |
| {"n":01} | ❌ 非法 | 前导零 |
计算局限与假设
本工具只做语法层面的校验,无法验证业务逻辑正确性。语法合法的 JSON 未必是有效数据——字段拼写错误、类型不符、日期格式非标准等问题需要你自己判断。大文件(数 MB)格式化可能造成页面卡顿,建议分段处理。
常见问题
JSON 和 JavaScript 对象有什么区别?
JSON 是纯文本交换格式,要求严格:键必须双引号、不能有函数、undefined、注释。JS 对象宽松得多。所以 JS 里合法的对象字面量直接 stringify 前后可能有差异,如 undefined 字段会被丢弃。
格式化后的 JSON 可以直接提交接口吗?
可以,空白不影响语义,接口两种都接受。建议调试时用格式化,实际传输用压缩(省 30% 以上体积)。注意字符串内的空格是数据的一部分,压缩不会碰它们。
中文被转成 \uXXXX 是乱码吗?
不是。ensure_ascii 风格的转义把中文写成 Unicode 码点,解析后还是原中文,两者完全等价。若接口返回一堆 \u 开头的串,用解析工具看实际值即可,不必担心。