# 排除指定值

使用 lodash _.without 排除数组中的指定值

> 标准页面: https://elysiatools.com/zh/tools/without-values

- **分类:** Data Processing

- **关键词:** 数组, 排除, 移除, 值, lodash

## 概述

返回一个不包含指定值的新数组。

**亮点：**
- 使用 lodash `_.without`
- 用 JSON 数组提供要删除的值
- 不会修改原数组

**示例：**
- 数组：`[1, 2, 2, 3]`
- 值：`[2]`
- 结果：`[1, 3]`

## 输入项

- **数组** (textarea): 输入 JSON 数组
- **要删除的值** (textarea): 要删除的值的 JSON 数组

## 适用场景

- 当您需要从数据列表中批量移除特定的无效值、测试数据或临时条目时。
- 当您希望从一个数组中排除某些已知的干扰项，以获得一个“干净”的数据集时。
- 在数据预处理或清洗阶段，需要根据一个值列表来过滤数组内容时。

## 工作原理

- 在“数组”输入框中，以 JSON 数组格式提供您的原始数据。
- 在“要删除的值”输入框中，以 JSON 数组格式列出所有您希望从原始数组中移除的值。
- 工具内部调用 lodash 的 `_.without` 函数进行处理。
- 处理完成后，将返回一个全新的数组，其中已排除所有指定的值。

## 使用案例

- 从用户ID列表中移除已知的测试账户或机器人ID。
- 在商品SKU列表中，排除已下架或缺货的商品编号。
- 清洗从API获取的数据数组，移除其中的占位符或错误代码。

## 常见问题

### 这个工具会修改我原来的数组吗？

不会。工具返回的是一个新数组，您的原始数组数据将保持不变。

### 支持哪些数据类型？

支持所有 JSON 兼容的数据类型，如数字、字符串、布尔值、null 等。

### 可以一次性删除多个不同的值吗？

可以。您只需在“要删除的值”数组中列出所有需要排除的值即可。

### 处理大型数组时性能如何？

工具基于 lodash 库，对于常规大小的数组处理效率很高。对于极大数组，性能取决于具体数据量。

### 如果要删除的值在原数组中不存在会怎样？

工具会忽略不存在的值，仅移除那些确实存在于原数组中的指定值。

## 相关工具

- [数组压缩工具](https://elysiatools.com/zh/tools/compact-array): 使用 lodash _.compact 从数组中移除假值
- [删除数组前N项](https://elysiatools.com/zh/tools/drop-items): 使用lodash _.drop删除数组的前N个元素
- [从右侧删除数组元素](https://elysiatools.com/zh/tools/drop-right-items): 使用 lodash 的 _.dropRight 从数组末尾删除 N 个元素
- [移除指定值](https://elysiatools.com/zh/tools/pull-values): 使用 lodash _.pull 从数组中移除指定值
- [排序去重](https://elysiatools.com/zh/tools/sorted-unique): 使用 lodash _.sortedUniq 为排序数组去重
- [排序按字段去重](https://elysiatools.com/zh/tools/sorted-unique-by): 使用 lodash _.sortedUniqBy 为排序数组按字段去重
- [数组去重](https://elysiatools.com/zh/tools/uniq-array): 使用 lodash _.uniq 为数组去重
- [按字段去重](https://elysiatools.com/zh/tools/uniq-by): 使用 lodash _.uniqBy 按属性路径去重

## 示例

- [Grafana 高级应用示例](https://elysiatools.com/zh/samples/grafana-samples): 全面的 Grafana 示例，涵盖高级仪表板设计、告警配置、数据源集成和插件开发
- [二维码示例](https://elysiatools.com/zh/samples/qrcode-samples): 用于测试二维码读取和生成工具的示例二维码图像
- [D3.js 数据可视化示例](https://elysiatools.com/zh/samples/d3js-data-visualization): 全面的D3.js数据可视化示例，包括图表、地图、动画和交互式可视化
- [Rome JavaScript 工具链示例](https://elysiatools.com/zh/samples/rome): Rome JavaScript 工具链示例，包括配置、代码检查、格式化、打包和项目管理
