2026-09-01

今日主题

  • JSON 方言与数据组织

新增认知

JSON 方言与数据组织

  • 分类脉络:JSON5 和 JSONC 解决的是“单个 JSON 文档如何书写”,JSONL 解决的是“多个 JSON 值如何逐条组织和传输”。
    因此前两者属于语法方言,后者属于数据编排格式,不能把 JSONL 简单理解成另一种 JSON 语法。

  • 方言有边界:JSON5 是较完整的宽松 JSON 扩展,通常允许注释、单引号、非引号键名和尾逗号;JSONC 主要增加注释,
    具体是否允许尾逗号取决于实现(如 VS Code 配置)。需要根据解析器契约选择,不能默认所有 JSONC 都等同于 JSON5。

  • 逐行便于流式:JSONL 要求每行都是一个独立的 JSON 值,适合日志、追加写入和流式处理;整个文件通常不是一个标准 JSON 文档,
    若需要一次性解析,应改用包在数组中的普通 JSON。