文本工具 · 约 5 分钟阅读

JSON 格式化器与验证器 —— 开发者的快速修复工具

为什么可读的 JSON 重要,最常见的语法错误,以及如何在几秒钟内格式化、验证和压缩 JSON。

尝试 JSON 格式化器

美化、验证和压缩 JSON。基于浏览器,无需上传。

打开工具

为什么 JSON 格式化很重要

JSON(JavaScript 对象表示法)已成为数据交换的通用语言。API 返回它,配置文件使用它,数据库存储它。但来自 API 响应的原始 JSON 通常看起来像这样:

{"users":[{"id":1,"name":"Alice","roles":["admin","editor"],"settings":{"theme":"dark","notifications":true}},{"id":2,"name":"Bob","roles":["viewer"],"settings":{"theme":"light","notifications":false}}]}

直接阅读简直不可能。现在对比一下格式化后的版本:

{
  "users": [
    {
      "id": 1,
      "name": "Alice",
      "roles": ["admin", "editor"],
      "settings": {
        "theme": "dark",
        "notifications": true
      }
    }
  ]
}

数据完全相同。但第二个版本让你能立即看到结构,发现缺失字段,并理解层级关系。格式化是调试的超能力。

5 种常见 JSON 错误

每个开发者都曾花时间寻找 JSON 语法错误。以下是常见的几种情况:

1 末尾逗号

JavaScript 允许数组和对象末尾有逗号,但 JSON 不允许。

// INVALID JSON
{
  "name": "Alice",
  "age": 30,    ← trailing comma
}

2 单引号

JSON 要求使用双引号,单引号是语法错误。

// INVALID: {'name': 'Alice'}
// VALID:   {"name": "Alice"}

3 未加引号的键

在 JavaScript 对象中,键不需要引号。在 JSON 中,键是必须加引号的。

// INVALID: {name: "Alice"}
// VALID:   {"name": "Alice"}

4 注释

JSON 不支持注释语法。没有 //,也没有 /* */。如果你需要注释,可以考虑使用 JSON5 或 JSONC,但标准 JSON 解析器会拒绝它们。

5 缺少括号或大括号

深度嵌套的 JSON 容易导致你忘记打开和关闭括号。格式化工具能立刻显示不匹配的括号对。

专业技巧:如果 JSON.parse() 出现"位置847意外的令牌"错误,请将JSON粘贴到格式化工具中。错误信息会直接指向问题所在。

格式化与压缩:何时使用

格式化(美化)

  • 调试 —— 检查 API 响应,查找缺失或错误的字段
  • 代码审查 —— 在拉取请求中让配置文件更易阅读
  • 文档编写 —— 在文档中包含可读的 JSON 示例
  • 学习 —— 理解陌生数据的结构

压缩

  • 生产环境 API —— 通过移除空白字符节省带宽
  • 配置文件 —— 减小文件体积以用于部署
  • 存储 —— 数据库和缓存中的数据包更小
  • 网络 —— 传输速度更快,尤其在移动网络环境下

例如从 50 KB 减到 20 KB,相当于减少 60%。实际节省取决于输入中可移除的空白数量,这不是实测保证。

2 空格 vs. 4 空格

这是关于 JSON 的 "制表符 vs. 空格" 争议。实际差异如下:

  • 2 空格 —— 更紧凑,大多数 JavaScript/Node.js 项目首选。npm、ESLint 和 Prettier 默认使用 2 空格
  • 4 空格 —— 对于深度嵌套结构更易阅读。常见于 Python(PEP 8)和 Java 项目

我们的 JSON 格式化工具 可以立即在两者之间切换。选择项目所使用的格式即可——一致性比具体数值更重要

隐私:为什么浏览器端处理至关重要

JSON 数据中常包含敏感信息:

  • API 密钥和令牌
  • 用户数据(邮箱、姓名、地址)
  • 配置文件中的数据库凭据
  • 内部系统架构细节

把敏感数据粘贴到格式化工具前,请核对处理位置以及谁能访问设备。条件允许时,使用脱敏示例。

JSON 格式化工具通过 JSON.parse() 和 JSON.stringify() 在本地处理输入,不上传内容进行格式化;资源请求和站点统计是不同环节。解析可能合并重复键,或对超出 JavaScript 安全精度的数字舍入,因此它不是保留原字节或任意精度的编辑器。

实际工作流程

  1. API 调试 —— 从开发者工具复制响应体 —— 粘贴 —— 格式化 —— 立即查看结构
  2. 语法验证 —— 可粘贴 package.json 之类的标准 JSON。含注释或尾逗号的 tsconfig.json 属于 JSONC,本标准 JSON 解析器不接受。
  3. 数据清理 — 加载大型JSON文件 — 压缩 — 生产环境中节省带宽
  4. 文档 — 为API文档中的JSON示例提供一致的缩进格式

现在格式化您的JSON

几秒钟内美化、验证和压缩JSON。无需上传,无需注册。

打开JSON格式化工具