# 数组拼接

使用 lodash _.concat 拼接多个数组

> 标准页面: https://elysiatools.com/zh/tools/concat-arrays

- **分类:** Data Processing

- **关键词:** 数组, 拼接, 合并, 连接, 组合, 扁平化, lodash

## 概述

## 功能

- **拼接最多 5 个数组**为一个数组
- **可选扁平化**结果中的嵌套数组（不扁平/浅扁平/深扁平）
- **可选去重**以删除重复值
- **智能类型检测**支持数字、布尔值和对象
- **灵活的输入格式** - JSON 数组或文本表示

## 使用示例

**基本拼接：**
```
数组 1: [1, 2]
数组 2: [3, 4]
数组 3: [5, 6]
结果: [1, 2, 3, 4, 5, 6]
```

**嵌套数组（启用扁平化）：**
```
数组 1: [1, 2]
数组 2: [[3, 4], 5]
结果: [1, 2, 3, 4, 5]
```

**启用去重：**
```
数组 1: [1, 2, 3]
数组 2: [3, 4, 5]
结果（去重）: [1, 2, 3, 4, 5]
```

## 输入项

- **数组 1** (textarea): \[1, 2\]
- **数组 2** (textarea): \[3, 4\]
- **数组 3** (textarea): \[5, 6\]
- **数组 4** (textarea): \[7, 8\]
- **数组 5** (textarea): \[9, 10\]
- **扁平化模式** (select)
- **去重** (checkbox)

## 适用场景

- 需要将来自不同来源（如多个API响应、多个文件）的多个数组数据合并为一个统一列表时。
- 处理包含嵌套数组的数据，希望根据需求将其展平为一维或二维数组时。
- 在合并数组后，需要自动移除结果中的重复元素以确保数据唯一性时。

## 工作原理

- 在对应的输入框中，以JSON数组格式（如 `\[1, 2\]`）或文本格式输入最多五个数组。
- 从下拉菜单中选择所需的扁平化模式：不扁平、浅扁平（仅展开一层）或深扁平（展开所有嵌套层）。
- 根据需要勾选“去重”选项，以在最终结果中自动删除所有重复的值。
- 工具将根据您的设置执行拼接、扁平化和去重操作，并立即生成合并后的数组结果。

## 使用案例

- 合并来自多个API端点返回的JSON数据列表，形成一个完整的数据集。
- 整理调查问卷中多选题的选项数据，这些数据可能分散在不同的数组或嵌套结构中。
- 在前端开发中，将多个组件的状态数组或配置参数数组组合起来进行统一处理。

## 常见问题

### 这个工具最多支持拼接几个数组？

最多支持拼接5个数组。

### “浅扁平”和“深扁平”有什么区别？

“浅扁平”只会展开数组的第一层嵌套，而“深扁平”会展开数组中的所有嵌套层级，直到变成一维数组。

### 去重功能是如何工作的？

去重功能会基于严格相等（===）比较，在拼接和扁平化完成后，移除结果数组中所有重复的值。

### 输入数组必须是JSON格式吗？

工具支持灵活的输入格式。您可以直接输入JSON数组（如 `[1, 2, 3]`），也可以输入类似 `[1, 2, 3]` 的文本表示，工具会尝试解析。

### 输出结果是什么格式？

输出结果是一个格式化后的JSON数组字符串，清晰地展示了合并、扁平化和去重后的最终数据。

## 相关工具

- [按条件移除](https://elysiatools.com/zh/tools/remove-by-predicate): 使用 lodash _.remove 按条件移除数组元素
- [深度去重](https://elysiatools.com/zh/tools/uniq-with): 使用 lodash _.uniqWith 进行深度去重
- [文本连接器](https://elysiatools.com/zh/tools/text-joiner): 使用自定义分隔符连接多个文本输入
- [数组差集](https://elysiatools.com/zh/tools/difference-arrays): 使用 lodash _.difference 从数组中删除存在于其他数组中的值
- [CSV文件合并工具](https://elysiatools.com/zh/tools/csv-merger): 将多个CSV文件合并成一个文件，支持表头处理和去重功能
- [数组扁平化工具](https://elysiatools.com/zh/tools/array-flattener): 将多维数组转换为一维数组，支持自定义深度
- [数组压缩工具](https://elysiatools.com/zh/tools/compact-array): 使用 lodash _.compact 从数组中移除假值
- [删除数组前N项](https://elysiatools.com/zh/tools/drop-items): 使用lodash _.drop删除数组的前N个元素

## 示例

- [Android Java 数据结构示例](https://elysiatools.com/zh/samples/android-datastructures-java): Android Java 数据结构示例，包括数组、哈希表和链表的常用操作
- [Android Kotlin 数据结构示例](https://elysiatools.com/zh/samples/android-datastructures-kotlin): Android Kotlin 数据结构示例，包括数组、哈希表和链表及其常见操作
- [重复行示例](https://elysiatools.com/zh/samples/text-duplicate-line-samples): 用于测试重复行移除工具的各种重复行类型的示例文件
- [特殊字符示例](https://elysiatools.com/zh/samples/text-special-characters-samples): 用于测试非字母数字字符移除的各种特殊字符、标点符号和符号的示例文本文件
