原交互工具已转换为静态 Markdown;以下保留功能说明、示例与速查内容。

UTILITY · JSON TOOLBOX

JSON 工具盒

一个共享输入的 工作台 (格式化 / 压缩 / 排序 / 树视图 一体) 加上独立的 转义 与 git 风格的 差异对比 —— 三个 section 解决日常 JSON 全部操作。纯前端、无依赖、数据不离开浏览器。

OFFLINE 无网络也可用 DEPS 纯 HTML + JS STRICT 标准 JSON SAFE 数据不离开浏览器

JSON 工作台

FORMAT · MINIFY · SORT · TREE · STATS

输入 A— B

{"name":"Anthropic","models":["opus","sonnet","haiku"],"founded":2021}

【文本】 【树视图】 【统计】 【类图】 【对比 B】 —

字节

最大深度

总键数

数组数

对象数

叶子值

点击 [类图] 标签或加载示例数据,自动按 key 名生成 UML 风类关系图

把要对比的 B 版本 JSON 粘贴在这里,然后点工具栏 [▶ 对比 A↔B]

【格式化 ⇲】【压缩 ⇱】2 空格 / 4 空格 / Tab【↑ 升序 A→Z】【↓ 降序 Z→A】 递归嵌套 排序数组(仅原始值)【▣ 重渲染树】【全展开】【全折叠】【▶ 对比 A↔B】【↕ 交换 A/B】 折叠相同段 归一化 Key【载入示例】【清空】【复制输出】【⛶ 全屏】

等待输入…

操作即切换:格式化/压缩/排序 → 文本标签;树视图 / 类图 → 对应标签。 对比 B :切到 [对比 B] 标签粘贴 B 版本,点 [▶ 对比 A↔B] 即在原编辑框内做高亮差异,再点一次退出。出错时输入框变橙。

转义 与 反转义

ESCAPE · UNESCAPE

输入原文 / 已转义字符串

原 JSON: {"msg":"hello \"world\""} 或 已转义文本: {\"msg\":\"hello \\\"world\\\"\"}

输出—

【转义 →】【反转义 ←】引号包裹:" 双引号 / ’ 单引号 / 无,仅转义【清空】【复制输出】【⛶ 全屏】

等待输入…

转义:把 JSON 文本变成可塞进字符串字面量的转义串("\"、换行 → \\n)。反转义:把日志或代码里复制的转义串还原。

速查

CHEAT SHEET

类别规则示例
标准 JSON 类型object · array · string · number · true · false · null{“x”: 1, “y”: [true, null]}
不支持undefined · NaN · Infinity · 注释 · 末尾逗号 · 单引号 · 函数这些是 JS 字面量,非 JSON
字符串转义\" \\ \/ \b \f \n \r \t \uXXXX“hello "world"\n”
数字不允许前导 +、不允许 .5(必须 0.5)、不允许 1.(必须 1.0)-3.14e10
必须是双引号包裹的字符串“k”: 1 ✓    k: 1 ✗
JSON Pointer路径用 / 分隔,数组用下标,空段表根/data/users/0/name
大小限制JS 数字精度 53 位,大整数会丢精度9007199254740993 → 9007199254740992
规范RFC 8259 (2017) · ECMA-404媒体类型 application/json

“JSON 不是数据结构,是协议;它的全部美德都来自约束 —— 越少越好,越显规则。”

JSON TOOLBOX · OFFLINE · PURE FRONTEND