JSON(JavaScript Object Notation)用键值对、数组与字面量描述结构化数据, 可读性较好,被大量 API 与配置文件采用(亦有 YAML、TOML 等替代场景)。
1. 基本类型
- 对象:无序的「字符串键 → 值」集合,写作
{ "key": value }。 - 数组:有序列表,写作
[ a, b, c ]。 - 值可为字符串、数字、布尔、null、对象或数组(嵌套)。
2. 与编程语言的关系
语言通常提供「解析(parse)」把 JSON 文本变成内存结构,以及「序列化(stringify)」反向输出。 浮点数精度、大整数与日期格式等边界问题需在跨语言系统间提前约定。
3. 常见坑
- 键名必须用双引号;末尾逗号在标准 JSON 中不允许。
- 注释不属于标准 JSON(部分扩展格式另当别论)。
- 未验证就反序列化不可信数据,可能触发类型混淆或资源耗尽类问题。
规范以 RFC 8259 及后续修订为准;生产环境可配合 JSON Schema 做契约校验。