JSON 压缩
免费在线JSON压缩工具,支持JSON单行紧凑压缩、JSON转义/反转义,内置智能语法修复自动处理尾逗号等常见错误,实时显示压缩率,CodeMirror编辑器带快捷键,纯前端处理。
免费在线JSON压缩工具,支持JSON单行紧凑压缩、JSON转义/反转义,内置智能语法修复自动处理尾逗号等常见错误,实时显示压缩率,CodeMirror编辑器带快捷键,纯前端处理。
JSON格式化(美化/Beautify)是在键值对之间添加缩进、换行和空格,让人眼更容易阅读,适合开发调试;JSON压缩(Minify)则是去除所有不必要的空白字符(空格、换行、制表符、缩进),将多行JSON变为单行紧凑格式,目的是减小体积、提升传输效率,适合生产环境API传输、配置文件精简和嵌入代码字符串。两者是互补操作——开发时看格式化版本,上线时用压缩版本。
JSON转义是指对JSON字符串中的特殊字符添加反斜杠转义(主要是把双引号 " 转成 \",反斜杠 \ 转成 \\,换行转成 \n 等),将多行JSON对象变成一个可以直接嵌入JavaScript、Java、Python等源代码中的单行字符串字面量。典型场景:在写单元测试时把JSON响应作为字符串内嵌到测试代码中;在Postman或curl命令中传递JSON字符串;在配置文件中把JSON作为字符串值。反转义(Unescape)则是将转义后的字符串还原为标准JSON。
可以。本工具内置智能语法修复引擎(tryFixJSON),在压缩前会自动检测并尝试修复常见JSON错误:1)末尾多余逗号(trailing comma),如 {"a":1,};2)单引号代替双引号,如 {'a':1};3)未闭合的字符串;4)JavaScript注释(// 和 /* */);5)末尾多余逗号等。修复后再执行压缩或转义,确保输出100%合法的JSON。如果检测到可修复错误,会在面板上显示「尝试修复」按钮,点击即可一键修正。
不会丢失数据。JSON压缩只是移除格式空白字符(空格、换行、制表符),不改变任何键名、键值、数据类型和结构,经 JSON.parse 再 JSON.stringify 后与原数据完全一致。压缩率取决于原JSON的格式化程度:如果原先是2空格缩进的格式化JSON,压缩率通常在 20%-40%(去除缩进和换行);如果有大量连续空格或注释(修复后),压缩率可达50%以上。状态栏实时显示原始字节数、压缩后字节数和精确压缩率。
不会。本工具采用纯前端处理架构,所有JSON解析、压缩、转义、修复运算全部在您本地浏览器的JavaScript引擎中完成,数据不会通过任何网络请求上传到外部服务器,断网也可以正常使用。您的API密钥、数据库配置、业务数据等敏感信息始终留在本地。
为提升效率,本工具提供了完整的键盘快捷键支持(macOS 用 ⌘+Shift,Windows 用 Ctrl+Shift):Shift+⌘/Ctrl+C 一键压缩;Shift+⌘/Ctrl+E 转义;Shift+⌘/Ctrl+U 反转义;Shift+⌘/Ctrl+O 上传文件;Shift+⌘/Ctrl+D 下载结果;Shift+⌘/Ctrl+K 清空。输入时工具也会400ms防抖自动执行当前模式,无需反复点击按钮。
JSON压缩(JSON Minification)是指去除JSON文本中所有不必要的空白字符(空格、换行符\n、制表符\t、回车符\r)和注释(非标准但常见),将多层缩进的格式化JSON转换为单行紧凑格式的过程。JSON压缩不改变任何数据内容——键名、键值、数据类型(字符串/数字/布尔/null/数组/对象)、嵌套结构完全保持不变,仅仅是移除了用于人类阅读的格式空白。
JSON压缩的核心价值在于减小数据体积。格式化JSON中的缩进空格和换行虽然对开发者友好,但在网络传输和存储时属于冗余字节。例如一个典型的API响应,格式化后可能有2KB,压缩后可能只有1.2-1.5KB,体积减少25%-40%。在高并发API场景、移动端弱网环境、大规模配置文件分发中,JSON压缩能显著降低带宽消耗、提升传输速度、减少服务器开销。生产环境中通常配合Gzip/Brotli等HTTP压缩一起使用,但JSON Minify作为内容层压缩仍然不可替代。
JSON压缩的实现非常简单:用JSON.parse()将文本解析为JavaScript对象,再用JSON.stringify(obj)不带缩进参数序列化输出即可——这正是本工具的核心实现方式。这种 parse + stringify 的方式天然保证了输出的JSON是100%合法的,还能自动去除非法注释和尾逗号(配合错误修复)。需要注意:JSON压缩与Gzip压缩是两个不同层面的优化——JSON Minify是内容层面去除冗余空白,Gzip是传输层面的通用压缩算法,两者可以叠加使用。
| 压缩方式 | 压缩层面 | 是否有损 | 可读性 | 适用场景 |
|---|---|---|---|---|
| JSON Minify | 内容层(去空白) | 无损 | 不可读(单行) | 生产API传输、配置精简 |
| JSON Beautify | 内容层(加空白) | 无损 | 高可读性 | 开发调试、人工阅读 |
| Gzip | 传输层 | 无损 | 不可读(二进制) | HTTP响应Content-Encoding |
| Brotli | 传输层 | 无损 | 不可读(二进制) | HTTPS静态资源压缩(比Gzip高20%) |
| MessagePack | 序列化层 | 无损 | 不可读(二进制) | 高性能RPC内部通信 |
| 原始字符 | 转义后 | 名称 | 说明 |
|---|---|---|---|
" | \" | 双引号 | JSON字符串必须转义的最常见字符 |
\ | \\ | 反斜杠 | 转义字符本身需要转义 |
换行 | \n | Newline | 多行字符串压缩为单行必须转义 |
制表符 | \t | Tab | 缩进Tab转义 |
回车 | \r | Carriage Return | Windows换行符CRLF中的CR |
/ | \/ | 斜杠 | JSON标准允许但不强制转义(可选) |