JSON 格式化工具 与验证器
在浏览器中抓语法错误、整理 API response,并在可读和压缩 JSON 之间切换。
模式:
缩进:
输入 JSON
Object 或 array
结果预览
JSON 格式化与验证
API response、设置文件、webhook 或静态数据 feed 出问题时,最后常会盯着 JSON 看。好的格式化工具应该让结构清楚、数据不被改动,并指出确切语法问题,而不是逼你用眼睛扫过上千个字符。
可读模式
把压缩 JSON 展开成可读结构,方便检查嵌套 object、array 和重复字段,同时保留原始数据。
压缩模式
移除空白和换行,生成较小数据负载,适合 fixture、embed、静态文件或快速分发。
解析器反馈
在数据负载进入代码、CI 或第三方整合前,先抓出错误引号、尾端逗号、缺少括号和坏掉的 escape sequence。
常见 JSON 错误
| 错误类型 | 常见原因 | 范例 |
|---|---|---|
| Unexpected token | 尾端逗号、单引号、注释或格式错误的 escape character 常会触发这个错误。 | { "key": "value", } |
| Unexpected end of input | Object 或 array 没有正确关闭。 | { "data": [1, 2 |
| Unquoted key | JSON 要求每个 property name 都使用双引号。 | { key: "value" } |
常见问题
标准 JSON 可以写注释吗?
不行。RFC 8259 JSON 不支持注释。如果需要行内备注,请改用 YAML、JSON5,或加入像 _comment 这样的专用字段。
JSON 可以用单引号吗?
不行。JSON 要求 property name 和 string value 都使用双引号。单引号可出现在 JavaScript object literal,但不是严格 JSON。
格式化会改变 JSON 数据吗?
不会。Pretty printing 只改空白和缩进。Minify 会再移除这些空白。除非原始输入无效,object values 应保持不变。
为什么 JavaScript object 可以跑,但作为 JSON 会失败?
JavaScript object literal 允许未加引号的 key、注释、function、undefined 和部分场景的尾端逗号。严格 JSON 是数据格式,接受的语法更小,也更适合跨系统传递。