关于 JSON扁平化 工具
JSON扁平化工具帮助你将嵌套的JSON对象递归展平为单层键值对结构。展平后的键使用点路径表示原始层级关系,如user.address.city,便于数据查询、对比、转换和导出。
什么是 JSON 扁平化?
JSON扁平化(Flatten)是指将多层嵌套的JSON对象转换为单层键值对的过程。原始的嵌套结构如{a:{b:{c:1}}}会被展平为{"a.b.c":1}。展平后的数据结构扁平、路径明确,便于快速查找特定字段、对比两个对象差异、以及转换为表格形式。
扁平化前 vs 扁平化后
扁平化前是嵌套层级结构,扁平化后是单层键值对,路径清晰。
| 对比项 | 扁平化前 | 扁平化后 |
|---|---|---|
| 结构 | 嵌套层级 | 单层键值对 |
| 键名 | 短 | 点路径 |
| 查询 | 逐层访问 | 直接查找 |
| 对比 | 复杂 | 简单 |
| 表格化 | 困难 | 容易 |
扁平化 与 原始JSON 的区别
原始JSON保留嵌套结构,适合程序处理;扁平化JSON是单层结构,适合人类阅读、数据对比和表格导出。
使用场景
- 数据对比:扁平化后便于逐字段对比两个对象。
- 表单处理:嵌套表单数据扁平化为字段名。
- 表格导出:扁平化后转CSV或Excel。
- 配置查询:快速查找配置项的完整路径。
- 日志扁平化:嵌套日志转扁平便于检索。
- 数据迁移:层级结构转扁平存储。
如何使用
- 在输入框粘贴嵌套的JSON对象。
- 选择路径分隔符(点号、斜杠、下划线)。
- 可选勾选「数组用[0]格式」。
- 点击「扁平化」按钮。
- 右侧显示扁平化后的JSON。
- 点击「复制」将结果复制到剪贴板。
功能特点
- 递归展平所有嵌套层级。
- 多种路径分隔符可选。
- 数组支持索引.0或[0]两种格式。
- 保留原始数据类型(数字、布尔、null)。
- 展平后键数统计。
- 纯前端实现,数据不外传。
常见问题 FAQ
Q:什么是JSON扁平化?
A:JSON扁平化是将嵌套对象转换为单层键值对,键使用点路径表示层级,如a.b.c=1,便于查询和比较。
Q:数组怎么处理?
A:数组元素用索引作为路径,默认arr.0、arr.1,勾选「数组用[0]格式」则用arr[0]、arr[1]。
Q:数据会被上传吗?
A:不会。所有处理在浏览器本地完成,数据不外传。
Q:可以还原吗?
A:可以。使用「JSON还原」工具可将扁平化结果还原为嵌套结构。