JSON 格式化与校验
粘贴 JSON,一键美化、压缩或校验;出错时指出大致的行和列。数据只在你的浏览器里处理,不会发送到任何服务器。
提示:本工具按标准 JSON 校验,注释、末尾多余逗号、单引号字符串都会被判为错误。
如何使用
- 把 JSON 粘贴到左侧输入框,可以是接口返回、配置文件、日志里的一段,也可以是压缩成一行的数据。
- 点「格式化」按 2 个空格、4 个空格或 Tab 缩进美化;点「压缩」去掉所有空白变成一行;只想知道写得对不对,点「仅校验」。
- 勾选「按键名排序」后,所有对象的键会按字母顺序排列,便于对比两份数据。
- 结果显示在右侧,可以复制或下载为 formatted.json。校验通过时会显示大小、键的数量和最大嵌套层数;出错时会提示大致的行号和列号。
适用场景
调试接口时把一长串返回数据展开看结构;修改 package.json、tsconfig、VS Code 设置等配置文件前后检查语法;把格式化好的 JSON 压缩成一行,放进环境变量、请求体或数据库字段;对比两次接口返回有什么不同时,先排序键名再比较;写文档、写测试用例时整理示例数据。
使用技巧
- 出错提示的位置是解析器“发现问题”的地方,真正的错误往往就在它前面一点,比如上一行末尾漏了逗号或引号。
- 最常见的错误:键名没加双引号、用了单引号、最后一项后面多了逗号、在 JSON 里写了 // 注释、把 JavaScript 的 undefined 或 NaN 当成值。
- 从网页或聊天软件复制的 JSON 有时混入中文引号“”,需要替换成英文双引号。
- 键名排序只影响对象,不会改变数组元素的顺序,数据含义不变。
隐私说明
格式化和校验都用浏览器内置的 JSON 解析器在本地完成,你粘贴的数据不会发送到任何服务器,也不会被保存。含有令牌、用户信息的接口数据也可以放心处理;不过把这类数据分享给别人之前,仍建议先删掉敏感字段。
常见问题
问:数据会被上传吗?
答:不会。所有处理都在你的浏览器里完成,页面不会把输入内容发送出去。
问:支持带注释的 JSON(JSONC / JSON5)吗?
答:不支持。本工具按标准 JSON 校验,注释、末尾逗号、单引号都会报错。可以先删掉注释再格式化。
问:很大的 JSON 能处理吗?
答:几 MB 的文件通常一两秒内完成;几十 MB 时浏览器可能卡顿,建议用命令行工具(如 jq)处理。
问:大数字会不会被改掉?
答:会有这个风险。超过 2 的 53 次方的整数(比如某些 18 位以上的 ID)在 JavaScript 中会丢失精度,格式化后末几位可能变化。这类数据建议在源头用字符串表示。
问:为什么提示的错误位置不准?
答:不同浏览器给出的错误信息不同,有的只给字符位置,本工具会换算成行列;位置表示解析器发现问题的地方,请同时检查它前面的内容。
问:中文会被转成 \u 编码吗?
答:不会,中文和 emoji 会原样保留。
广告位(AdSense 接入后显示)