JSON 扁平化
JSON 扁平化在线工具。把多层嵌套的 JSON 拍平成单层对象,键用路径表示,例如 user.name、user.tags[0]、server.port,方便写配置、做 Diff,或塞进只接受扁平键值的数据系统。路径分隔符与数组写法可配置,拍平在浏览器本地完成,数据不上传。
在工作台中打开 本地处理 · 数据不上传
怎么使用
- 1
粘贴嵌套 JSON
把多层对象放进输入框,或选择本地 .json 文件。
- 2
选择分隔符与数组写法
键分隔符默认点号 .,可换成 _、/、-;数组下标写法可选 bracket(tags[0])或 index(tags.0)。
- 3
调整输出
选择缩进,并决定是否递归排序 key;每次拍平会统计叶子字段数。
- 4
复制或反向还原
复制单层结果,或点「用输出翻转」把结果直接还原回嵌套结构。
功能特点
路径键
嵌套层级自动拼成 a.b[0].c 形式的键,结构层级一目了然。
数组写法可选
bracket(tags[0])或 index(tags.0)两种风格,匹配不同工具的习惯。
空容器保留
空对象、空数组作为叶子保留,不会在拍平过程中悄悄丢失。
Worker 本地计算
大对象在后台线程拍平,界面不卡顿,数据不上传。
常见错误与排查
- ! 若原始键名里本来就有分隔符(如 a.b),拍平后可能与路径混淆,建议先统一命名或改用不常见的分隔符。
- ! 状态栏会显示本次拍平后的字段数,可与预期核对,确认没有漏掉层级。
常见问题
扁平化和反扁平化能来回切换吗?
可以,两者互为逆向;同一页面用「用输出翻转」即可把结果直接还原回嵌套结构。
数组会被怎么处理?
数组按索引展开成 key[0]、key[1] 等;空数组会作为叶子保留。
数据会被上传吗?
不会,拍平在浏览器本地完成。