格式化、压缩与校验 JSON
JSON 格式化工具做三件事:把压缩成一行的 JSON 按 2 空格缩进重新排版,方便阅读;把带缩进的 JSON 压缩成单行,减少传输体积;以及只做语法校验。当 JSON 有语法错误时,工具会给出出错的位置和原因,比如缺少逗号、引号不配对、多了尾随逗号等,不用你自己在几百行里肉眼找。
所有解析都在浏览器里用原生 JSON.parse 完成,你的数据不会发送到任何服务器,处理包含内部接口地址、测试数据的内容也是安全的。
API 响应与配置文件中的 JSON
调试 API 时,后端返回的响应常常是压缩过的单行 JSON,贴进来格式化后层级一目了然。修改 package.json、VS Code 配置等文件前,可以先校验一遍再保存,避免因为一个多余逗号导致整个服务起不来。排查日志里的 JSON 片段时,格式化后配合搜索能快速定位字段。
反向用法也很常见:提交配置或写死 mock 数据时,用“压缩为单行”把 JSON 压小,减少体积。
JSON 语法规则与数据类型
标准 JSON 比 JavaScript 对象字面量严格:键必须用双引号、不允许尾随逗号、不允许注释、不支持单引号和 undefined。很多人把 JS 对象当成 JSON 贴进来,校验失败大多是这个原因。如果你的内容带注释,那它其实是 JSON5 或 JS 对象,需要先手动去掉注释。
另外 JSON 不保证字段顺序的语义(虽然本工具会保留原顺序输出),也不支持日期、正则等类型——它们在 JSON 里只能是字符串。
格式化 JSON 会改变大整数或重复键吗?
会。解析与序列化使用 JavaScript。超过 Number.MAX_SAFE_INTEGER(9,007,199,254,740,991)的整数可能丢失精度;重复对象键只保留最后一个值。需要精确保存的标识符应使用字符串,在意这些细节时请保留原始输入。