{ } JSON 格式化

格式化、压缩、校验 JSON,支持语法高亮、JSON5、JSONPath 查询和表格视图

📥 输入 JSON
1
📤 输出结果

            

什么是 JSON?

JSON(JavaScript Object Notation,JavaScript 对象表示法)是一种轻量级的数据交换格式,由 Douglas Crockford 于 2001 年提出。它基于 JavaScript 的对象语法,但独立于编程语言,几乎所有主流语言都有内置的 JSON 解析器。JSON 使用人类可读的文本表示数据,是目前 Web API 和数据传输的事实标准

JSON 支持六种数据类型:字符串(string)、数字(number)、布尔值(boolean)、null、对象(object)和数组(array)。其简洁的语法和跨语言特性使其成为前后端通信、配置文件、日志存储等场景的首选格式。

为什么需要 JSON 格式化工具?

在日常开发中,我们经常遇到压缩成一行的 JSON 数据——API 返回的响应、日志文件中的记录、或是数据库导出的字段。这些压缩后的 JSON 几乎无法阅读和调试。一个优秀的 JSON 格式化工具可以:

  • 美化(Pretty-print):添加缩进和换行,让 JSON 结构一目了然。
  • 压缩(Minify):移除不必要的空白,减小数据传输体积。
  • 语法校验(Validate):快速定位 JSON 中的语法错误(如缺少逗号、括号不匹配等)。
  • 语法高亮(Highlight):用不同颜色区分键名、字符串、数字和布尔值,提升可读性。

JSON5:更人性化的 JSON 扩展

JSON5 是 JSON 的一个超集,旨在让 JSON 更易于人类手写和维护。它支持以下 JSON 不支持的语法:

  • 注释:支持单行注释(//)和多行注释(/* */)。
  • 尾随逗号:对象和数组的最后一项后面允许有逗号。
  • 单引号字符串:字符串可以用单引号括起来。
  • 无引号键名:合法的 JavaScript 标识符可以不使用引号。
  • 十六进制数字:支持 0x 前缀的十六进制表示。

我们的工具内置 JSON5 解析支持,你可以直接粘贴含注释或单引号的配置内容,工具会自动转换为标准 JSON 进行格式化。

JSONPath:JSON 的 XPath

JSONPath 是一种用于从 JSON 文档中提取特定数据的查询语言,类似于 XML 中的 XPath。它使用路径表达式来导航和筛选 JSON 数据:

表达式说明
$根节点
$.store.book[*].title获取所有书的标题
$..author递归搜索所有 author 字段
$.store.book[0]获取第一本书
$.store.book[-1]获取最后一本书
$.store.book[0,2]获取第 1 和第 3 本书

我们的工具内置 JSONPath 查询功能,支持 $. 点表示法、[*] 通配符、.. 递归搜索等常用语法。

JSON vs 其他数据格式

格式可读性体积解析速度数据类型支持适用场景
JSON⭐⭐⭐⭐中等⭐⭐⭐⭐6 种基本类型Web API、配置、日志
XML⭐⭐⭐较大⭐⭐需 Schema 定义文档标记、SOAP
YAML⭐⭐⭐⭐⭐较小⭐⭐⭐丰富(锚点、引用)配置文件、CI/CD
MessagePack极小⭐⭐⭐⭐⭐同 JSON高性能通信、IoT
Protobuf极小⭐⭐⭐⭐⭐需 .proto 定义微服务通信、gRPC

常见 JSON 格式化场景

  • API 响应调试:将单行 JSON 响应格式化后,快速定位字段路径和数据结构。
  • 日志分析:格式化日志中的 JSON 条目,提取关键信息。
  • 配置文件维护:格式化 package.jsontsconfig.json 等配置文件,保持统一风格。
  • 数据库导出:格式化 MongoDB 导出的 JSON 文档或 PostgreSQL 的 JSONB 字段。
  • 前后端联调:验证接口返回的 JSON 结构是否符合预期。

JSON 最佳实践

  • 使用双引号:标准 JSON 要求字符串使用双引号,虽然 JSON5 支持单引号,但生产环境应使用标准 JSON。
  • 不要尾随逗号:标准 JSON 不允许对象或数组末尾有多余逗号。
  • 键名始终加引号:虽然在 JavaScript 中可以省略,但标准 JSON 要求键名必须是双引号字符串。
  • 避免循环引用:JSON 不支持循环引用,序列化时会报错。
  • 注意数字精度:JavaScript 中的 JSON.parse 对大整数(>2^53)可能丢失精度,处理大数字时使用字符串传递。
  • 合理控制嵌套深度:过深的嵌套会降低可读性和解析性能。

为什么选择我们的 JSON 格式化工具?

我们的 JSON 格式化工具提供了超越普通格式化器的完整功能集:

  • JSON5 支持:直接粘贴带注释或单引号的类 JSON 内容,无需手动修改。
  • 键排序:支持升序/降序排列对象键名,让大型 JSON 更易浏览。
  • 多视图切换:代码视图(语法高亮)、树形视图(可折叠展开)、表格视图(清晰对比数据)。
  • 自动解码:自动识别并解码 JSON 中嵌套的转义 JSON 字符串。
  • JSONPath 查询:使用路径表达式精确提取 JSON 中的特定数据。
  • 完全本地运行:所有处理在浏览器中完成,数据不会上传到任何服务器,安全可靠。
  • 实时预览:输入即时格式化,300ms 防抖确保流畅体验。

无需安装任何软件,打开浏览器即可使用,是每个前端和后端开发者的必备工具箱。

🔍 JSONPath 查询