如何以树形结构查看 JSON
- 粘贴 JSON、拖入文件或从 URL 加载,树形视图会显示在文本旁边。
- 点击某一行即可展开或折叠,也可以使用全部展开和全部折叠。使用键盘时,↑ 和 ↓ 用于移动,← 和 → 用于折叠和展开节点。
- 在搜索框中输入内容,即可只显示匹配的键和值。选中节点后,可以复制它的 JSONPath、JavaScript 路径或值。
如何阅读 JSON 树
- 对象会显示其键的数量,例如
{5};数组会显示其元素数量,例如[12]。 - 颜色和小标签标明了每个值的类型:字符串、数字、布尔值、null、对象或数组。
- 长数组每次显示 200 项,因此即使文件包含数十万个值,操作依然流畅。
- 数字会按原样精确显示:长 ID 不会被舍入,键也会保持原有顺序。
JSONPath 是什么?
JSONPath 用于描述某个值在 JSON 文档中的位置,类似于文件路径。它已于 2024 年作为 RFC 9535 正式标准化。$ 表示根,.name 选择属性,[0] 选择数组元素,['first name'] 则用于选择名称中含有空格或特殊字符的属性。
| 路径 | 选中的内容 |
|---|---|
$.store | 根对象的 store 属性 |
$.products[0] | products 数组的第一个元素 |
$.products[0].price | 第一个商品的价格 |
$.address.geo.lat | 嵌套在三层深处的值 |
$['shipping address'].city | 名称中含有空格的键 |
在 JavaScript 中,同一个值写作 data.products[0].price,使用复制 JS 路径即可获得这种形式。
常见问题
可以打开大型 JSON 文件吗?
可以。树中只会绘制已展开的部分,长数组每次显示 200 项,因此在桌面浏览器中可以打开几十 MB 的文件。
如何复制某个值的路径?
点击该节点,然后使用复制路径获取 JSONPath($.users[0].email),或使用复制 JS 路径获取 JavaScript 路径(data.users[0].email)。
可以在查看器中编辑 JSON 吗?
查看器是只读的,因此不会误改任何内容。如需修改值、重命名键或添加项目,请打开 JSON 编辑器。
如果我的 JSON 无效会怎样?
错误提示框会显示问题所在的行、列和原因,在错误修正之前,树形视图会继续显示最后一个有效版本。