JSON 格式化
校验、格式化、压缩和排序 JSON
所有输入只在当前浏览器内处理,不发送到服务器或写入本地存储。
结构统计
- UTF-8 字节
- 顶层类型
- 节点数
- 对象键数
- 最大深度
等待输入 JSON 或文本。
最大输入 1 MiB · 所有操作均在当前浏览器完成
从报错到可读结构:JSON 格式化与校验
粘贴 API 响应、配置文件或日志片段,先检查它是否是有效 JSON,再按缩进阅读、压缩或排序对象键。格式化能暴露结构问题,也方便把结果复制到编辑器、接口文档或代码评审中。
选择处理方式,而不是只看缩进
格式化会解析数据并生成带缩进的 JSON;压缩会移除不必要的空白。排序选项会递归排列对象键,但保留数组原有顺序,因此适合减少对象键顺序造成的差异,不适合比较语义上相同但数组顺序不同的数据。
转义、反转义和 Unicode 编码/解码处理的是文本,不会把普通文本当作对象重新整理。输入对象时,工具还会显示值类型、字节数、节点数、键数与最大深度,帮助快速检查数据规模。
Input:
{"service":"api","active":true,"limits":{"requests":100}}
Formatted output:
{
"service": "api",
"active": true,
"limits": {
"requests": 100
}
}用最小输入定位结构问题
把示例中的输入贴入编辑区并提交,输出保留布尔值和数字的类型;`requests` 仍是数值 100,而不是字符串。若开启排序,`active`、`limits`、`service` 会按键名排列,数组元素则不会换位。
JSON 语法错误会给出行、列、附近片段和定位符。看到报错时,先检查上一项末尾多出的逗号、未加双引号的键、单引号字符串和不成对的大括号;JSON 不接受 JavaScript 对象字面量的全部写法。
重复键会被解析器折叠
解析使用浏览器的 `JSON.parse`。对象中若两次出现同名键,解析后只保留最后一个值,再格式化时前一个值已经消失;因此这个工具可以发现语法错误,却不是重复键审计器。需要保留或检测重复键时,请在解析前用能报告重复键的专用检查器。
大多数“意外变成空值”的问题来自输入并非 JSON,例如注释、尾随逗号、`undefined`、`NaN` 或单引号。JSON 只支持双引号字符串、有限数字、布尔值和 `null`;修正源文本后再处理,别把格式化成功误当成业务数据正确。
本地处理的范围与限制
JSON 内容在当前浏览器中处理,不会为格式化而上传到服务器。输入上限为 1 MiB,页面可选择 2 或 4 个空格缩进,嵌套统计最多接受 256 层;超出限制或浏览器内存不足时应拆分文件。
格式化只确认文本能按 JSON 语法解析,不会校验 API 字段、必填项、权限、数值范围或签名。下载文件前请核对目标系统要求;接下来可用 YAML 转换器检查另一种配置格式,或用 JSONL 工具逐行处理记录。