格式化一段紧凑的对象
一行 API 响应需要变得易读。
- 输入:{"b":2,"a":1}
- 选择 2 个空格缩进后格式化
- 输出:{ "b": 2, "a": 1 }
格式化后的版本更容易检查。再点“压缩”就会回到原来不带空格的紧凑形式。
这个工具在浏览器本地格式化、压缩和校验 JSON,数据不会发送到任何地方。输入有误时会标出解析失败的行号和列号,可选的键排序还能让文件对比更容易阅读。
所有数据都在你的浏览器本地处理,不会上传到我们的服务器。
JSON.stringify(value, null, indentation)
格式化会先把 JSON 解析成值,再按所选缩进重新序列化。压缩使用同一套序列化过程,只是不加缩进,也不保留多余的空白。
JSON 无效 → 先得到字符位置,再换算成行号和列号
解析失败时,解析器的字符位置会换算成行号和列号。浏览器或运行时给出的原始信息会接在一句简短的提示之后显示。
一行 API 响应需要变得易读。
格式化后的版本更容易检查。再点“压缩”就会回到原来不带空格的紧凑形式。
一个多余的逗号让配置文件无法解析。
行号和列号指向解析器第一次无法继续的位置。
注释、尾随逗号、单引号和 undefined 都不是合法的 JSON。如果文件其实是 JSON5 或 JSONC,请改用按严格 JSON 规则检查的工具。
格式化在本地完成,但特别大的文档可能需要一点时间,并且受浏览器内存限制。过大的文件建议拆成几部分处理。
按照规范,JSON 对象本身是无序的。开启键排序后输出顺序固定,适合用来比较不同文件。
不会。它只报告问题,不做猜测。按照提示的行号和列号修改后重新格式化即可。
格式化会加上缩进和换行,方便阅读;压缩会去掉可省略的空白,让数据更小。两者保留的数据完全一样。
可以。勾选“键排序”后,工具会在每一层嵌套中按字母顺序排列对象键,数组的顺序始终不会改变。
不会。解析和格式化都在你的浏览器里完成,数据不会发送到服务器,也不会被保存。
JavaScript 的对象写法允许注释、尾随逗号和单引号,而 JSON 不允许。去掉这些写法,或改用支持 JSON5 的工具。