JSON 格式化与验证器
美化、验证并压缩 JSON,缩进可调。即时发现语法错误——复制或下载结果,100% 在浏览器中运行。
输入 JSON
输出
什么是 JSON?
JSON(JavaScript 对象表示法)是一种轻量级、基于文本的数据交换格式,源自 JavaScript 对象字面量。它使用人类可读的键值对和有序列表来表示结构化数据,由 RFC 8259 描述。JSON 支持六种数据类型——字符串、数字、布尔值、null、对象和数组——并且与语言无关:几乎所有现代编程语言都能解析和生成它。
由于 JSON 紧凑、易解析且与 JavaScript 直接兼容,它已成为 Web API、配置文件、NoSQL 数据库和服务间通信的事实标准。无论您是在读取 REST 响应、编辑 package.json 还是检查 webhook 负载,您都在与 JSON 打交道。
为什么要格式化和验证 JSON?
来自 API 或由机器生成的 JSON 通常被压缩以节省带宽——它没有缩进和换行。虽然传输高效,但难以手工阅读和编辑。格式化器(又称美化器或 pretty-printer)会重新引入一致的缩进、换行和间距,使结构一目了然。
验证同样重要。一个位置错误的逗号、一个未加引号的键或一个多余逗号都可能将 JSON 文档变成无法解析的无效语法。验证器会立即告诉您文档是否格式良好,并指出错误位置,以便您在保存、部署或发送负载之前修复它。
本工具的功能
本 JSON 格式化和验证器一次完成三件事:
- 验证——严格解析输入。如果无效,您会得到一条清晰的错误消息,指出问题位置。
- 美化——解析后的值会按您选择的缩进(2 个空格、4 个空格、制表符)重新序列化,使嵌套对象和数组易于跟踪。
- 压缩——选择"压缩"选项可剥离所有空白,生成最小化的表示形式,便于存储或传输。
该工具还会报告输入和输出的体积以及 JSON 值的顶层类型(对象、数组、字符串、数字、布尔值或 null),帮助您快速了解所处理的内容。
何时使用 JSON 格式化器
每当您需要手工阅读、编写或调试 JSON 时,JSON 格式化器都很有用。常见场景包括:
- 检查 API 响应。粘贴响应体以阅读嵌套字段并验证数据结构。
- 编辑配置文件。许多工具(eslint、tsconfig、package.json、VS Code 设置)使用 JSON 配置;格式化可保持可读性。
- 调试 webhook。将传入负载与预期架构进行比较,以查找缺失或类型错误的字段。
- 准备测试夹具。美化打印夹具,使协作者可以在不破坏语法的情况下审查和修改。
- 部署前压缩。剥离嵌入 JSON 的空白以减小生产环境中的负载体积。
常见 JSON 陷阱
JSON 语法严格,少数几个错误占据了大部分验证错误。了解它们有助于您更快地编写有效的 JSON:
- 多余逗号。严格 JSON 不允许对象或数组最后一项后出现逗号。
- 未加引号的键。对象键必须用双引号包裹——单引号和裸标识符无效。
- 单引号字符串。字符串值只能使用双引号。
- 注释。JSON 不支持
//或/* */注释。如果需要注释,请使用 JSONC 或 JSON5 等格式。 - 特殊数字值。
NaN、Infinity和-Infinity在 JSON 中无效——请改用null或字符串。 - 未转义的控制字符。字符串内的字面制表符和换行符必须转义为
\t和\n。
当本工具报告错误时,通常指向这些问题之一。修复高亮位置并重新格式化以确认。
这个 JSON 格式化器免费吗?
是的,完全免费,无需注册、除设备内存外没有任何限制,无需上传——一切在本地运行。
它支持 JSONC(带注释的 JSON)吗?
不支持。本工具按 RFC 8259 解析严格 JSON。注释不属于 JSON 规范,会被报告为语法错误。
它能处理的最大体积是多少?
仅受浏览器内存限制。数 MB 的文档通常可以工作,但非常大的文件在文本区中渲染可能较慢。
它既能压缩也能美化吗?
是的。从缩进菜单中选择"压缩(无空格)"以剥离所有空白并生成最小的有效 JSON。
我的数据会被上传吗?
不会。所有解析和格式化都在浏览器中进行,JSON 永远不会离开您的设备。