当前位置: 首页 > news >正文

json的几种标准格式

JSON 的几种标准格式(以及最常见的实际使用变体)

JSON(JavaScript Object Notation)本身在官方标准(RFC 8259 / ECMA-404)中只有一种核心语法,但在实际使用中,因为不同的场景、约定、风格、工具链,衍生出了几种被广泛认可的“格式风格”。

下面按规范性 + 流行度排序,列出目前最常见的几种 JSON “格式”:

序号格式名称是否官方标准缩进风格键是否必须加引号主要使用场景代表性工具/生态推荐程度(2025-2026)
1标准紧凑格式(Compact)无缩进必须网络传输、API 返回、存储、日志几乎所有 JSON 库默认★★★★★(传输首选)
2标准美化格式(Pretty / Formatted)2 或 4 空格必须配置文件、调试、可读性优先jq、VS Code、Postman、浏览器 DevTools★★★★★(阅读首选)
3JSON5否(扩展)支持无引号键可选配置文件、手写 JSON、开发阶段json5 库、部分 IDE、Vite 配置★★★★☆(配置常用)
4JSONC(带注释)否(扩展)同标准必须配置文件(允许 // 和 /* */ 注释)VS Code settings.json、tsconfig.json★★★★☆(开发常用)
5HJSON否(扩展)更宽松可省略引号人类友好配置文件hjson 库(较小众)★★☆☆☆
6JSON Lines / NDJSON否(约定)每行一个对象必须日志、流式数据、大文件处理Logstash、Fluentd、Kafka、ClickHouse★★★★★(大数据/日志)
7GeoJSON是(RFC 7946)标准 JSON必须地理空间数据GIS 系统、地图服务领域专用
8JSON-LD是(W3C)标准 JSON必须语义网、结构化数据、SEOSchema.org、Google 搜索领域专用

最常用的几种格式示例对比

1. 标准紧凑格式(Compact JSON)
{"id":123,"name":"张三","age":28,"isActive":true,"tags":["java","python"],"address":{"city":"上海","zip":200000}}
2. 标准美化格式(Pretty JSON)—— 2空格 / 4空格 都常见
{"id":123,"name":"张三","age":28,"isActive":true,"tags":["java","python"],"address":{"city":"上海","zip":200000}}
3. JSON5(开发配置中最受欢迎的扩展)
{ // 支持单行注释 id: 123, // 键可以不加引号(合法标识符) name: "张三", age: 28, isActive: true, // 支持尾随逗号 tags: [ "java", "python", "golang", // ← 最后一个逗号合法 ], address: { city: '上海', zip: 200000, note: '可以单引号' } }
4. JSONC(带注释 JSON)
{"id":123,"name":"张三",// 这里是单行注释"age":28,/* 这是块注释 */"tags":["java","python"]}
5. JSON Lines / NDJSON(每行一个独立 JSON 对象)
{"id":1,"name":"张三","time":"2025-01-01"} {"id":2,"name":"李四","time":"2025-01-02"} {"id":3,"name":"王五","time":"2025-01-03"}

快速决策表(你应该用哪种?)

场景强烈推荐格式为什么常见工具/库支持情况
HTTP API 返回紧凑 JSON体积小、解析快所有语言都原生支持
调试 / 日志查看美化 JSON(2或4空格)可读性第一jq、python -m json.tool
配置文件(手写)JSON5 或 JSONC允许注释、尾随逗号、无引号键VS Code 原生支持 JSONC
大规模日志 / 数据管道JSON Lines / NDJSON可逐行读取、不需要一次性加载全部fluentd、logstash、spark
需要人类长期维护的配置JSON5最接近 JavaScript 对象字面量json5 库、部分前端构建工具
安全敏感、不可信来源标准 JSON(紧凑或美化)拒绝任何扩展语法,最高兼容性

小结口诀(背下来就够用)

  • 传网路上→ 紧凑(Compact)
  • 给人看→ 美化(Pretty)
  • 自己写配置→ JSON5 / JSONC
  • 日志流式→ JSON Lines / NDJSON
  • 安全第一→ 只认标准 JSON

你现在最常遇到的是哪一种 JSON 格式的使用困惑?

  • API 返回格式太大了想压缩?
  • 配置文件想加注释?
  • 日志系统要处理海量 JSON?
  • 还是想知道怎么在代码里优雅输出美化 JSON?

告诉我具体场景,我可以给你对应的代码示例或工具推荐。

http://www.jsqmd.com/news/325516/

相关文章:

  • 2026年研究院转让公司排行,性价比高的有哪些
  • 中企优帮的管理水平如何选择,这些要点要掌握
  • 导师推荐!专科生必用10款AI论文工具测评
  • httpx库异步爬虫实战对比aiohttp
  • asyncio+queue实现生产者消费者爬虫模型
  • 基于ssm的考研复习平台w0ws1848(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,架构界面在最后面。
  • 如何用Python搭建一个网站
  • 2026年技巧:用抖音训练测试AI模型
  • 互联网大厂Java面试实录:核心技术栈与业务场景深度解析
  • 抽奖系统推荐!年会必备神器!老司机专用神器!
  • Java中随机数生成_java 随机数,零基础入门到精通,收藏这篇就够了
  • 开源工具如何让测试报告美感飙升200%:专业解析与实战指南
  • 深入解析:iOS开发:关于日志框架
  • 2026年当下头部门窗采购有哪些,平移断桥提升窗/侧压平移推拉窗/推拉窗/门窗/安全门窗/窗纱一体铝门窗,门窗采购排行
  • 软件测试公众号爆款内容解析:专业洞察与AI应用
  • Docker核心问题汇总(含原理、操作、网络全解析)
  • adobe acrobat软件可以-另存为-缩小大小-可以将23MB文件转成1MB,太牛逼了
  • [嵌入式系统-171]:直流电机通过PWM信号控制转速和连续运转;步进电机通过脉冲信号实现开环控制,每接收一个脉冲转动一个固定步距角;伺服电机则通过PWM脉宽指令结合内部反馈实现闭环控制,精确控制
  • 2026效率革命:AI会议纪要转测试需求的实战指南
  • Java SE 面向对象
  • 推荐专业的研究院转让公司,全国范围内哪家比较靠谱?
  • Python开发平台怎么选?核心功能与场景匹配指南
  • 低代码测试平台的隐私合规陷阱:软件测试从业者的专业避坑指南
  • 2026年行业内做得好的四边封包装袋批发厂家口碑推荐,中封袋/自立袋/纹路袋/聚酯尼龙袋,四边封包装袋订做厂家哪家靠谱
  • 2026年企业服务性价比大比拼,聊聊中企优帮的市场竞争力和费用详情
  • cycler复数形式是什么?cyclers用法解析
  • 量子算法测试结果解析工具的核心原理与应用价值
  • 408真题解析-2010-21-计组操作系统-中断执行顺序
  • 2026年上门按摩平台权威解析与推荐盘点:五大平台综合深度评估
  • 探讨推荐的AI办公鼠标企业哪家口碑好