JSON 工具

JSON 格式化把层级看清,把数字保留

默认自动运行,输入或选项变化后停顿 400ms 更新结果。关闭开关后显示执行按钮,也可按 Ctrl/Cmd+Enter。旧结果不可复制或下载。

JSON 格式化

这四项按文本处理左侧输入;需要连续转换时,点“结果用作输入”,也可撤销上次应用。

输入 JSON / 文本

输入仅保留在当前浏览器标签页,不上传,也不持久化保存。

输出结果

内容已变化,正在更新结果…

排查接口时,真正费劲的往往不是解析,而是在一整行响应里找到那层对象。JSON 美化将嵌套结构展开,大整数编号、小数尾零和指数写法仍按原样输出,方便核对数据库返回的值。JSON 格式化只改排版,不改值本身。

需要紧凑请求体时可用 JSON 压缩;需要改一个字段时可打开树形视图。JSON 格式化和压缩均会校验语法,清理与排序则另行预览,避免把排版操作变成未察觉的数据修改。

看清变化,再继续处理

空属性与数组占位不是一回事

接口中的缺失字段与显式 null 可能触发不同逻辑。预览区会显示待应用的完整结果,原结果仍保留在上方。清理只删除对象属性:数组中的 null、空字符串与空容器不会消失,后续元素的索引也不会移动。若子属性删完使对象变空,该对象属性可继续被清理。

两个嵌套数据树对照,数组位置保持一致,空对象属性分支在预览中标出并从右侧树中移除。

日志里的转义字符串,一层一层还原

日志或接口有时把整份 JSON 包在字符串中,满屏反斜杠不便阅读。转义添加一层反斜杠但不加外层引号;去转义还原一层,也接受带外层双引号的字符串。先对照两栏,再把结果用作输入继续操作。Unicode 转换保留排版和长数字,方便查看中文内容或准备需要转义字符的文本。

左右文档内容相同,右侧引号前增加琥珀色反斜杠,两条反向箭头表示转义和去转义。

导出前值得确认的三件事

01

选择自动或手动运行

默认自动运行,输入或选项变化后停顿 400ms 更新结果。关闭开关后显示执行按钮,也可按 Ctrl/Cmd+Enter。旧结果不可复制或下载。

02

树中编辑的是完整值

展开节点后点击编辑,可替换单个值或整个子树。字符串必须带双引号,对象和数组必须是合法 JSON。保存会同步左右两栏,并留下一个可撤销快照。

03

预览不等于应用

勾选清理选项后先查看预览,再决定应用或取消。预览期间复制和下载仍针对当前结果;应用后可撤销上次树形编辑或清理,恢复之前的输入与输出。

从阅读响应到修改测试数据

数字不经过浮点转换

900719925474099312345 不会被舍入,1.00 不会变成 1,-0 与指数形式也会保留。数字按原始文本保存,适合检查长整型主键或需要核对精度的接口样本。

按层展开,按路径修改

树形视图默认折叠容器,每次显示最多 50 个子项,可继续加载。带斜线或波浪号的键也能准确定位;替换整棵子树前会重新检查文档整体的深度和大小。

解释字符数与文件体积

结果统计分别显示 Unicode 字符数、UTF-8 字节数、最大节点深度和对象键总数。中文与表情可能占多个字节,因此字符少不等于文件小;根节点深度记为 0。

转义与 Unicode 双向转换

支持引号、反斜杠和控制字符转义,以及一层字符串的去转义。中文转 Unicode 同时处理其他非 ASCII 字符,表情使用代理对;Unicode 转中文可还原可读字符。即使结果不是 JSON 文档,也能复制和下载文本。

实际处理规则与上限

格式化拒绝重复键
同一对象出现相同键时停止处理,即使其中一个键使用 Unicode 转义也一样。注释、尾随逗号、单引号和无引号键名也不接受;原始输入保留,不会静默取最后一个值。
两种删除选项各管一类
去 null 仅移除值为 null 的对象属性;去空值递归移除空字符串、空数组与空对象属性。仅含空格的字符串、false 和 0 保留。数组元素与根值不会删除。
键排序不重排数组
排序递归作用于所有对象,包括数组里的对象,按 UTF-16 编码单元比较,区分大小写。它不是拼音或本地字典排序,也不会改动数组顺序。
保留值,不承诺文本逐字一致
字符串转义可能重写,例如 \u0061 可能输出为 a,但字符串值不变。支持 2 空格、4 空格和制表符缩进;压缩只去掉字符串外的排版空白,不提供规范化签名输出。
有明确的处理预算
输入最多 500,000 个 UTF-16 编码单元、50,000 个节点,最大深度 100,单个数字最多 1,000 字符。输出最多 2,000,000 个编码单元,超限报错,不导出不完整结果。
文本转换与结构校验分开
四个文本按钮不校验文档结构。去转义接受转义内容或完整双引号字符串,非法转义会报错。Unicode 解码保留字面反斜杠、控制字符、引号、反斜杠及孤立代理项的转义,避免破坏 JSON;无效 Unicode 片段保持原样。编码覆盖所有非 ASCII 的 UTF-16 单元。

JSON 格式化常见问题

看起来没问题,为什么仍提示语法错误?

先检查提示的行列及其前方内容,尤其是尾随逗号、缺失引号和未闭合括号。提示位置是解析停止的位置,不一定就是最早写错的位置。

能把每层对象的键排好序吗?

可以。先得到当前结果,再勾选键排序并预览。确认后应用;数组元素的先后顺序不变。

怎样得到单行结果?

点击压缩即可。它保留字符串内部的空格和转义换行含义,只删除结构之间用于排版的空白。

缩进可以选哪些形式?

默认 2 空格,也可以选择 4 空格或制表符。更改选项后重新执行,输出才会更新。

输入的数据会被发送到服务器吗?

不会。处理在当前标签页内进行,不生成带数据的分享链接。复制与下载需要主动点击,关闭标签页后内存中的文档状态会丢失。

发现处理结果不符合预期?

用 JSON 格式化整理下一份响应

用示例对照 JSON 格式化、压缩和清理预览,再处理自己的数据。