# JSON扁平化工具

将嵌套的JSON对象转换为键值对，支持自定义分隔符和扁平化策略

> 标准页面: https://elysiatools.com/zh/tools/json-flattener

- **分类:** Data Processing

- **关键词:** json, 扁平化, 嵌套, 对象, 转换, 键值对, 层级

## 概述

JSON扁平化工具是一款高效的数据处理工具，旨在将复杂的嵌套JSON对象转换为简洁的单层键值对结构，支持多种扁平化策略及自定义分隔符，助您快速简化数据层级，提升数据解析与分析效率。

## 输入项

- **JSON输入** (textarea): Enter your nested JSON object...
- **扁平化策略** (select)
- **键分隔符** (text): Character to join nested keys
- **最大深度** (number): Maximum nesting depth to flatten (0 = unlimited)
- **包含数组扁平化** (checkbox)
- **过滤空值** (checkbox)
- **保持原始顺序** (checkbox)
- **键排序** (select)

## 适用场景

- 需要将多层嵌套的JSON数据转换为扁平结构以便导入Excel或数据库时。
- 在进行数据清洗时，需要统一JSON键名格式以方便后续程序读取时。
- 需要快速提取深层嵌套对象中的特定字段，并将其转化为易于阅读的键值对列表时。

## 工作原理

- 在输入框中粘贴您的嵌套JSON数据。
- 选择合适的扁平化策略（如点号、路径或括号表示法）并设置自定义分隔符。
- 根据需求配置最大深度、数组处理及键排序规则。
- 点击转换按钮，即可获取扁平化后的JSON结果。

## 使用案例

- 将复杂的API响应数据转换为扁平的CSV格式以便进行数据分析。
- 简化前端配置文件，将深层嵌套的设置项转换为扁平的键值对以方便管理。
- 在数据迁移过程中，将非结构化的嵌套JSON转换为符合数据库表结构的扁平数据。

## 常见问题

### 该工具支持哪些扁平化策略？

支持嵌套（Nested）、括号（Bracket）、点号（Dot Notation）和路径（Path）四种策略。

### 可以自定义键之间的分隔符吗？

可以，您可以在设置中指定任意字符作为键连接的分隔符，默认为点号（.）。

### 如何处理JSON中的数组？

通过勾选“包含数组扁平化”选项，工具会自动将数组元素展开为索引键值对。

### 是否可以限制扁平化的层级深度？

可以，通过设置“最大深度”参数，您可以控制转换的层级，0表示不限制深度。

### 转换后的结果支持排序吗？

支持，您可以选择按字母顺序、反向字母顺序或深度进行键排序。

## 相关工具

- [JSON键重命名器](https://elysiatools.com/zh/tools/json-key-renamer): 批量重命名JSON对象键，支持模式、规则和转换。适用于API响应格式化和数据标准化。
- [JSON反扁平化工具](https://elysiatools.com/zh/tools/json-unflattener): 将扁平化的键值对转换回嵌套的JSON对象，支持不同键格式和数据类型推断
- [从键值对构建对象](https://elysiatools.com/zh/tools/from-pairs): 使用 lodash _.fromPairs 将键值对数组转换为对象
- [JSON键提取器](https://elysiatools.com/zh/tools/json-key-extractor): 从JSON对象中提取所有键，支持多种输出格式。非常适合分析JSON结构、生成文档和理解复杂的嵌套对象。
- [对象键值转换器](https://elysiatools.com/zh/tools/object-key-value-converter): 在不同对象键值格式之间转换并操作对象结构
- [CSV转JSON转换器](https://elysiatools.com/zh/tools/csv-to-json): 将CSV数据转换为JSON格式，支持自定义解析选项
- [混乱文本结构化数据工作台](https://elysiatools.com/zh/tools/messy-text-to-structured-data-workbench): 从粘贴文本、混合分隔符、键值行或 HTML 中推断表格，并导出 CSV、JSON 和 Markdown。
- [文本转JSON转换器](https://elysiatools.com/zh/tools/text-to-json): 将各种文本格式转换为JSON，支持自定义解析选项

## 示例

- [Terraform Plan JSON 样本](https://elysiatools.com/zh/samples/terraform-plan-json-samples): 用于依赖可视化和变更审查的 Terraform plan JSON 文件样本，贴近 terraform show -json 输出结构
- [JSON 示例](https://elysiatools.com/zh/samples/json): JSON（JavaScript 对象表示法）格式示例，从简单到复杂结构
- [聊天记录 JSON 示例](https://elysiatools.com/zh/samples/chat-transcript-json): 多角色聊天记录的 JSON 示例
- [富媒体 JSON 示例](https://elysiatools.com/zh/samples/rich-media-json): 常见富文本编辑器（TipTap、Quill、Slate）的 JSON 示例
