数据处理 / FIELD GUIDE

JSON 看着没问题,为什么解析失败?

从尾逗号到大整数,用一组可以复现的例子查清问题。

先记住这一点

语法通过,只是第一步。重复字段和数字精度还要再检查。

先分清 JSON 与 JavaScript

JSON 的字段名和字符串使用双引号。下面的尾逗号会让严格 JSON 解析失败;对象注释和单引号也不属于 JSON 语法。先复制这个例子到校验工具,查看定位,再删除最后一个逗号。

INVALID JSON
{
  "name": "demo",
  "enabled": true,
}

PlainKit 会报告检测到的错误位置。位置可能是解析器发现问题的位置,根因也可能在上一行:例如漏掉一个结束引号。

语法正确,也可能丢失含义

VALID SYNTAX / REVIEW REQUIRED
{
  "id": 9007199254740993,
  "role": "reader",
  "role": "admin"
}

这个例子有一个大整数和一个重复字段。PlainKit 的 JSON 格式化保留原始数值文本并提示风险;数据转换和比较会拒绝这类有歧义的输入。不要用解析后再序列化的普通 JavaScript 数值流程“修复”这个编号。

对于订单号、区块高度以外的长编号、金额的最小单位等需要精确往返的数据,先约定字符串格式;真实金额还需要明确单位和小数位,不能只加引号就认为业务正确。

JSONL 每一行是一条记录

JSONL
{"id":"001","status":"ready"}
{"id":"002","status":"queued"}
  • 切换到 JSONL 模式;每条记录保持在一行。
  • 先修复报错行,再检查重复字段和精度提示。
  • 下载结果后,在真正消费数据的系统里再做一次校验。

原始资料与编辑说明

资料核对:2026-10-17。本文包含 PlainKit 自编示例与实践说明,不代表来源机构的背书;不是安全审计结论。

现在,自己验证一次。

用合成示例开始,输入仍在你的浏览器内处理。

打开对应工具 →下载练习素材 ↓