JSON 树状折叠视图与节点搜索

把嵌套 JSON 展开成可折叠的层级树,搜索节点、复制路径与节点值,比在层层大括号里翻找快得多。

一段多层嵌套的 JSON,在纯文本里要数着括号才能判断某个字段属于哪一层,字段名相近时尤其容易看错。树状视图把结构直接摊开:每个对象和数组显示成员数量,叶子节点标注数据类型,任意节点都能点开或收起,层级关系一眼可见。

树视图和编辑器共用同一份内容,输入区一改,树会立即重新构建。所有渲染都在浏览器本地完成,粘贴的接口数据、配置内容不会被发送到服务器,也不会因为查看一次结构就产生网络请求记录。

折叠、层级与展开策略

每个对象和数组节点前面都有箭头,点击即可折叠或展开,空容器显示为圆点且不可展开。顶部提供展开全部、折叠全部,以及折叠到 1、2、3、4 层的快捷按钮,默认展开到第 3 层。深层嵌套的文档建议先折叠到较浅层级,再定位目标分支逐层展开:节点是递归渲染的,一次性展开十万个节点会让浏览器明显卡顿,先折叠能省下大量渲染工作。

搜索节点与自动展开

搜索框对键名和叶子节点的值同时匹配,不区分大小写,按字面量比较,正则符号会被自动转义,所以搜 . 或 * 不会报错。命中部分用底色高亮,并且包含命中节点的分支会自动展开,即使它位于当前折叠层级之下也会被翻开,这一点在排查深层字段时很实用。清空搜索框后,树会恢复到按层级折叠的状态。

复制 JSONPath 与节点值

鼠标悬停到节点上会出现路径与内容两个按钮,叶子节点上分别对应路径与值。路径以 $ 开头拼接,对象成员用点号连接,数组元素用方括号下标,例如 $.data.list[0].id,可以直接粘进 JSONPath 查询工具求值。需要留意路径拼接不会给键名加引号,如果键名本身含点号、空格或中括号,粘贴过去可能解析失败,此时要改写成 $["my.key"] 这样的方括号形式。复制对象节点得到的是一段 2 空格缩进的 JSON 片段,适合直接贴进工单或文档。

广告

常见问题

树视图没有显示内容是什么原因?
树视图依赖成功解析,JSON 存在语法错误时不会渲染,界面会提示无有效 JSON 数据。先在编辑器里修正语法,底部错误提示会给出具体行号与片段,或者用一键智能纠错处理,解析通过后树会自动出现。
搜索能匹配字段值的中间部分吗?
能。匹配规则是子串包含,只要键名或叶子值里出现搜索内容就算命中,不要求整词相等,也不区分大小写。对象和数组节点本身不参与匹配,但包含命中子节点的分支会被自动展开,所以结果不会藏在折叠起来的节点里。
复制的路径能直接在 JSONPath 里用吗?
键名是普通英文与数字时可以,形如 $.data.list[0].id 的路径能被直接求值。键名包含点号、空格、连字符或中文时,路径里的键名没有加引号,可能被误解析,需要手工改成 $["键名"] 的方括号形式再查询。
超大的 JSON 用树视图会卡吗?
节点数量多时会。每个节点都是独立的界面元素,全部展开意味着浏览器要同时渲染它们,几万个节点就会明显变慢。建议保持默认的 3 层折叠、用搜索直接定位目标字段,或者只把需要的分支复制到新的编辑器里单独查看。

相关工具

广告