JSON 格式化

粘贴 JSON 文本,用标准的 JSON.parse 解析后按 2 空格、4 空格或 Tab 缩进美化,或压缩为单行;还可递归将对象键按字母序排列。解析失败时会给出具体错误信息,全部在浏览器本地完成,不发起任何网络请求。

输入内容 等待输入
缩进
输出
键排序

仅使用 JSON.parse 解析,不使用 eval;不接受的输入(如 JSON5、尾逗号、注释)会提示语法错误。

格式化结果
字符数—
行数—
顶层类型—
粘贴 JSON 文本,点击「格式化」,结果将显示在这里。

缩进与压缩由 JSON.stringify 的第三个参数控制;键排序会递归作用于所有对象,数组元素顺序保持不变。

计算规则
  • 解析使用标准 JSON.parse,仅接受 RFC 8259 语法,不使用 eval。
  • 美化:JSON.stringify(value, null, 2),缩进可为 2、4 或制表符 \t。
  • 压缩:JSON.stringify(value),去除所有非必要空白。
  • 键排序:对每个对象的键调用 Array.prototype.sort() 按 Unicode 码位升序重排,数组元素顺序保持不变。
  • 顶层类型取 object / array / string / number / boolean / null 之一。
  • 解析失败时返回原始错误信息(如 Unexpected token),便于定位问题。