JSON、JSONC、JSON5 看起来很像,但它们的定位不同。把它们混用,是很多解析报错的来源。
{
// JSONC / JSON5 allow comments in some tools
name: 'ToolGarden',
tags: ['json', 'tools'],
}核心区别
| 格式 | 是否标准 JSON | 主要特点 |
|---|---|---|
| JSON | 是 | 严格、通用、适合接口和数据交换 |
| JSONC | 不是标准 JSON | 常见于配置文件,允许注释,语法整体接近 JSON |
| JSON5 | 不是标准 JSON | 更接近 JavaScript 对象字面量,允许单引号、尾逗号、未加引号 key 等 |
什么时候用哪一个?
- 接口请求和响应:使用标准 JSON。
- 需要给人读的配置文件:可以考虑 JSONC,但要确认工具链支持。
- 希望写法更像 JavaScript:可以用 JSON5,但不适合直接发给普通 API。
- 要发送给后端、数据库或第三方系统:先转换成标准 JSON。