{ } 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 开头的串,用解析工具看实际值即可,不必担心。