{ } JSON Decoder

在线 JSON 解析工具

一键格式化、压缩、验证与树状查看 JSON 数据。全部在浏览器端处理,你的数据不会离开本机。

不会。所有解析与格式化都是在你的浏览器内执行的,数据不会离开本机。

大多数现代浏览器可以流畅处理 1-10 MB 的 JSON。超大文件 (>20 MB) 可能会比较慢或卡顿,建议使用命令行工具处理。

输入 JSON

支持拖拽文件

                    
                

输出结果

等待输入

                            

                        

为什么选择 JSON Decoder?

快速、隐私、零安装 — 直接在浏览器解析你的 JSON。

即时格式化

一键将压缩的 JSON 展开为易读格式,支持缩进与自动语法高亮。

极致压缩

移除所有空白与换行,产出最精简的 JSON,便于 API 传输。

错误定位

解析失败时会标示第几行第几列,并显示错误上下文,方便调试。

树状查看

可展开/收起的结构化视图,一眼看懂嵌套结构,显示数组长度与键数量。

隐私优先

全部在你的浏览器中计算,数据不会上传到任何服务器。

文件导入/导出

支持拖拽.json 文件上传,也能把处理结果一键下载为.json。

JSON Decoder 如何工作

纯浏览器端 JSON 解析 — 不上传、无日志、不调用第三方 API。

  1. 1

    粘贴或拖入你的 JSON

    把 JSON 字符串粘贴到编辑器,或从硬盘拖入 .json 文件。浏览器通过 FileReader 直接读入 JavaScript 内存 — 没有 XHR、没有 fetch、没有上传。即使是几 MB 的 payload 也没问题,parser 在必要时会分块处理。

  2. 2

    浏览器原生 parser 执行

    我们把字符串交给 JSON.parse — 与你浏览器处理每个 fetch 响应所用的 V8 / SpiderMonkey / JavaScriptCore parser 完全一致。如果解析失败,会直接告诉你出错字符在第几行第几列,让你立即修正。没有 regex hack,没有含糊的错误信息。

  3. 3

    本地渲染树状视图

    解析完成后,结果会用虚拟化 DOM 节点以可折叠的树状形式渲染 — 即使是 100,000 个 key 的对象,也能流畅保持 60 fps。可折叠数组、复制路径、用键盘导航。

  4. 4

    格式化、压缩或下载

    选择 2 / 4 / tab 缩进 pretty-print,压缩成单行,复制到剪贴板,或下载清理后的文件。所有转换都在你的浏览器中运行 — 结果字节不会离开页面。

常见使用场景

纯浏览器解析 JSON 胜出的真实场景。

调试 API 响应

从后端日志或 DevTools 复制压缩后的响应体,粘贴到这里,立即看到结构。不用安装 CLI 工具或配置 jq 别名。

检查 JWT payload

把 JWT 中段经 Base64 解码后得到的 JSON 粘贴进来,立即看到 claims、过期时间和自定义字段。Token 不会接触任何颁发它的服务器之外的地方。

整理配置文件

重新格式化 CI 一直报错的格式损坏的 .json 配置(Tailwind、ESLint、package.json、tsconfig)。能抓出手写配置中常见的多余逗号和重复 key。

对比 API 合约

并排打开两个浏览器标签页,粘贴新旧 schema。用树状视图直接看出新增或删除的字段,不用 diff 一堆转义字符串。

为什么纯浏览器处理在这里很重要

你解析的 JSON 通常包含真实客户记录、API key、JWT secret、内部 ID 和 PII。大多数在线 JSON 格式化工具会把你粘贴的 payload POST 到他们的服务器 — 也就是说每一个字段都会被第三方记录。iKit 的 JSON Decoder 作为 JavaScript 运行在你的浏览器标签页中,parser 能看到你的数据,但服务器永远看不到。

  • 解析期间零网络请求 — 可在 DevTools → Network 中验证。
  • 页面加载后可离线使用 — 断网后解析仍然有效。
  • 没有服务器日志、没有限流、无需注册、没有每日配额。

相关教程

来自 iKit 博客的深度教程与工具对比。

常见 JSON 语法错误及修复方法

在上方粘贴你的 JSON——验证器会精确定位到具体的行和字符位置。以下是开发者最常遇到的错误。

Error message Cause Fix
Unexpected token } in JSON at position N A trailing comma before } or ] — JSON does not allow trailing commas. Delete the comma after the last item: {"a": 1,} → {"a": 1}
Unexpected token ' in JSON at position N Single quotes around keys or values — JSON requires double quotes. Replace 'value' with "value" on every key and string.
Unexpected token N in JSON at position N A bare word like NaN, None or undefined — none are valid JSON values. Use null, a number, or a quoted string instead.
Expected property name or '}' / Expecting 'STRING' An unquoted object key: {name: "x"} — keys must be double-quoted strings. Quote the key: {"name": "x"}
Unexpected end of JSON input The text was truncated — an unclosed brace, bracket or string. Check that every { has a } and every [ has a ] — the tree view shows where it stops.
Unexpected token / in JSON at position N Comments (// or /* */) — the JSON spec does not allow them. Remove the comments, or keep config in JSONC/YAML and convert before parsing.
Bad control character in string literal A raw newline or tab inside a string. Escape it: use \n, \t or \u escapes inside the quotes.

JSON 数据类型与转义规则

JSON 允许的一切——以及那些众所周知的禁忌(注释、尾随逗号、单引号)。

TypeExampleNotes
string"hello"Double quotes only
number3.14, -2, 1e9No NaN, Infinity or leading zeros
booleantrue, falseLowercase only
nullnullNot None or nil
object{"key": "value"}Keys must be quoted strings
array[1, "a", null]Mixed types allowed
EscapeMeaning
\" \\ \/Quote, backslash, slash
\n \r \tNewline, return, tab
\b \fBackspace, form feed
\uXXXXUnicode code point (4 hex digits)
Not allowed: comments, trailing commas, single quotes, unquoted keys

常见问题

这个工具会上传我的 JSON 数据吗?

不会。所有解析与格式化都是在你的浏览器内执行的,数据不会离开本机。

支持多大的 JSON?

大多数现代浏览器可以流畅处理 1-10 MB 的 JSON。超大文件 (>20 MB) 可能会比较慢或卡顿,建议使用命令行工具处理。

为什么会出现 "Unexpected token" 错误?

通常表示 JSON 缺少引号、多了逗号、或使用了单引号。切换到「错误信息」标签可以看到具体的行列位置。

支持 JSON5 或带注释的 JSON 吗?

目前只支持严格的 RFC 8259 JSON。如果需要支持 JSON5 / JSONC 请告诉我们。

可以离线使用吗?

首次加载后,大部分资源会被浏览器缓存;之后在有网或无网情况下均可使用。

JSON 可以包含注释吗?

不可以——JSON 规范(RFC 8259)不允许注释,解析器会以语法错误拒绝它们。如果你需要带注释的配置文件,可以考虑 JSONC 或 YAML,然后在解析前转换为纯 JSON。

JSON 区分大小写吗?

是的。键和字符串值区分大小写("Name" 和 "name" 是不同的键),并且字面量 true、false 和 null 必须是小写——True 或 NULL 是语法错误。

JSON 有哪些数据类型?

JSON 恰好有六种类型: string(仅限双引号)、number(不允许 NaN 或 Infinity)、boolean(true/false)、null、object 和 array。其他任何东西——日期、undefined、函数——都必须用这些类型之一来表示,通常是 string。

JSON 格式化工具和 JSON 验证工具有什么区别?

格式化工具重新缩进 JSON 使其易读(美化),或去除空白(压缩)。验证工具根据 JSON 语法检查并报告出错位置。本工具两者兼备: 在你输入时实时验证,并显示第一个错误的精确行号和字符位置。

我可以把 JSON 转换为 YAML 或 CSV 吗?

可以——使用其他 iKit 工具: JSON ↔ YAML 转换器在 jsonyaml.ikit.app,CSV ↔ JSON 在 csvjson.ikit.app。要比较两个 JSON 文件请使用 Diff Checker,要压缩 JS/CSS 请使用 Minifier——它们和本工具一样,全部免费且仅在浏览器中运行。