JSON 语法校验:定位非法 JSON 与常见错误

2026-07-19

什么时候需要 JSON 校验

联调时前端报 Unexpected token、后端反序列化失败、配置中心拒绝加载——第一步通常是确认:这段文本是不是合法 JSON

ComTools JSON 校验Tools/Json/Validator)在浏览器本地执行 JSON.parse:通过则提示有效(并可按缩进美化展示);失败则显示引擎给出的错误信息,帮你修语法。

使用步骤

  1. 打开 JSON 校验
  2. 粘贴待测文本(可点示例)。
  3. 可选:选择缩进(2 / 4 / Tab),通过后会按该缩进展示。
  4. 点击 运行
  5. 状态区显示「校验通过」或具体错误原因。

数据仅在本地解析,不上传服务器

合法 vs 不合法示例

合法

{
  "id": 1,
  "name": "Alice",
  "active": true,
  "tags": ["a", "b"],
  "meta": null
}

常见非法写法

问题 错误示例 改法
尾逗号 {"a":1,} 去掉最后一个逗号
单引号 {'a':1} 改用双引号 "a"
键未加引号 {a:1} "a": 1
注释 {"a":1 // x} JSON 标准无注释,删掉
多余逗号在数组 [1,2,] 去掉尾逗号
未转义引号 {"msg":"say "hi""} 使用 \"
单引号字符串 / NaN { "n": NaN } null 或数字字符串

浏览器错误信息通常类似:Unexpected token ... in JSON at position N,按 position 找到附近字符即可。

校验通过之后做什么

下一步 工具
可读化 JSON 格式化
压成一行 JSON 压缩
对比两版响应 JSON 对比
生成 C# 实体 JSON 转 C#
数组转 INSERT JSON 转 SQL
抽字段 JSONPath

与格式化的关系

  • 校验:关心合不合法;通过时可顺带美化输出。
  • 格式化:以美化、高亮、折叠为主;非法时同样会报错。

只想「红灯/绿灯」用校验;要长时间阅读大对象用 格式化

注意事项

  • JSON ≠ JavaScript 对象:undefined、函数、NaN、尾逗号均不合法。
  • 日期在 JSON 里一般是字符串(ISO 8601),不是 Date 类型。
  • 超大文本可能导致浏览器卡顿,可先截取子树校验。

常见问题

Q:错误里的 position 怎么用?
A:从文本开头数字符(含换行);或把报错片段放到编辑器里搜索附近的 , ' {

Q:JSON5 / YAML 能校验吗?
A:本工具按严格 JSON。YAML 请用对应工具;宽松格式需先转成标准 JSON。

Q:空输入?
A:视为无效(空输入)。

Q:数组根节点可以吗?
A:可以,[1,2,3]{...} 都是合法根。


English version