{ }

JSON 格式化

格式化、校验、自动修复并定位 JSON 路径

JSON 与数据
🔒 100% 本地运行 — 你的数据不会离开当前页面
由 Evan 维护•最近更新:2026年9月29日•最近复核:2026年9月29日
选项模式
输入

默认保留中文和 emoji。开启后,文本输出以 Unicode 转义表示非 ASCII 字符,格式化与压缩均适用;解析后的值与树视图不变,UTF-8 体积可能增加。

开始使用

粘贴 JSON 即可预览排版结果,点击“执行格式化”确认校验状态。切换“高级”可修复常见语法错误、排序键名或查找路径。

Profile: RFC 8259格式化
输出
结果将显示在这里

RFC 配置只影响是否允许顶层原始值,不检查 JSON Schema。数字按 JavaScript Number 解析;需精确保留的大整数请用字符串。超出有限数字范围时会报错。

输入和查找路径不保存为浏览器草稿,只记住排版设置。分享链接的 # 片段包含完整输入,未加密,持有链接的人和页面脚本均可读取,请勿分享机密数据。旧版查询参数链接在首次请求时已把参数发给服务器;加载后会从地址栏清除。

页面阅读模式

完整说明还包括常见问题处理、操作示例、代码片段、FAQ 和相关工具,便于核对结果或排查问题。

工具说明

格式化或压缩 JSON,可选择键名排序、树视图和嵌套路径查找。解析使用 JavaScript 数字类型;需要精确保存的大整数和标识符请使用带引号的字符串。RFC 4627 配置要求顶层是对象或数组,其他配置允许原始值;这些配置不验证 JSON Schema 或业务规则。自动修复仅处理有限的注释、单引号字符串、裸键和尾逗号;不能确定的修复会报错并保留原输入。处理在当前页面完成,只保存显示设置,不保存 JSON 原文或查询路径。分享链接把输入放在 URL 片段中,持有链接的人均可读取,请仅分享不含敏感信息的示例。 可选 Unicode 转义作用于格式化与压缩输出;UTF-8 字节比较如实显示增加或节省,不代表网络压缩后的体积。

场景配方

01

移除尾逗号,保留消息原文

目标:将小段配置修成合法 JSON,同时保持字符串内容。

  1. 粘贴 {"message":"Hello, name: world",}。
  2. 打开更多选项,执行自动修复。
  3. 结果应能解析,message 仍严格等于 Hello, name: world;再格式化或下载。

结果:只需移除末尾逗号,字符串中的 name: 不是对象键名。

生产可用片段

特殊键名也是数据

json

{"z":1,"__proto__":{"keep":true},"a":2}

推荐工作流

失败门诊(高频踩坑)

大整数标识符解析后发生变化

原因:JavaScript Number 无法精确表达所有超过 2^53−1 的整数。

修复:将 "9007199254740993" 这类标识符保留为字符串,或使用支持任意精度的专门解析器。

常见问题

RFC 配置检查什么?

RFC 4627 要求顶层为对象或数组,其他可选配置允许原始值。这里只检查语法及顶层限制,不验证 JSON Schema 或业务规则。

自动修复支持哪些问题?

支持有限的注释、单引号字符串、未引用对象键和尾逗号;不执行 JavaScript、不支持完整 JSON5,也不能重建缺失数据。修复失败会保留原输入。

排序会删除 __proto__ 这类键吗?

不会。排序保留 JSON 自身属性,包括 __proto__、constructor 和 prototype,也不改变数组顺序。数字仍按 JavaScript 数字语义处理。

会保存 JSON 输入吗?

本工具只保存显示设置,不保存 JSON 输入或 Path Finder 文本。格式化不调用远程处理接口;复制和下载会生成由你控制的副本。

分享链接是私密的吗?

不是。新链接将编码后的输入放在 # 后,普通 HTTP 请求不发送该片段,但接收者与页面脚本仍可读取。编码不是加密。旧 ?j= 链接的首次请求已经发送查询参数,页面加载后才清除已识别的分享参数。不要分享秘密数据。

怎样查找嵌套值?

输入 $.orders[0].id 这样的路径。精确查找只读取 JSON 实际包含的属性,不将 JavaScript 继承属性当作结果。

继续浏览