跳到主要内容

JSON 扁平化

嵌套 JSON 展平成一层

5 个扁平键

扁平化常用来把接口返回的嵌套数据塞进表格或 CSV(一层键就是一列), 也方便做「只改某几个字段」的补丁请求。还原时数字键会自动拼回数组。 注意:如果原始键名里本身含有分隔符,来回转换会有歧义,建议换成不冲突的符号。 全部在本地完成。

JSON 扁平化是什么

嵌套结构和扁平结构是同一份数据的两种表示。扁平化后一层键对应一列,正好匹配表格模型。

这个工具能做什么

  • 嵌套 JSON 展平成一层的键值
  • 扁平结构还原成嵌套对象
  • 数字键自动拼回数组
  • 分隔符可选 . _ / : 或自定义

怎么使用(输入说明)

  1. 选扁平化或还原
  2. 粘贴 JSON
  3. 选分隔符
  4. 复制结果

使用时的几个注意点

  • 键名含分隔符会有歧义
  • 空对象和空数组会保留为 {}[]
  • 还原时数字键会变成数组,注意别误用

实例

{"user":{"name":"张三"}} 展平成 {"user.name":"张三"},再还原能回到原结构。

常见问题 FAQ

Q:扁平化有什么实际用途?

A:两个典型场景:把接口返回的嵌套数据塞进表格或 CSV(一层键就是一列);做「只改某几个字段」的补丁请求时,扁平键更方便定位。

Q:还原时数组能认出来吗?

A:能。还原逻辑会把「全是数字键的对象」自动拼回数组,tags.0、tags.1 会变回 [“a”,“b”]。

Q:键名里本身有分隔符怎么办?

A:会有歧义,来回转换可能对不上。遇到这种情况请换成不冲突的分隔符,比如键名里有点号就改用下划线。

常见问题

扁平化有什么实际用途?
两个典型场景:把接口返回的嵌套数据塞进表格或 CSV(一层键就是一列);做「只改某几个字段」的补丁请求时,扁平键更方便定位。
还原时数组能认出来吗?
能。还原逻辑会把「全是数字键的对象」自动拼回数组,tags.0、tags.1 会变回 ["a","b"]。
键名里本身有分隔符怎么办?
会有歧义,来回转换可能对不上。遇到这种情况请换成不冲突的分隔符,比如键名里有点号就改用下划线。