关键信息
- 分类
- Data Processing
- 输入类型
- textarea, text
- 输出类型
- text
- 样本覆盖
- 4
- 支持 API
- Yes
概览
本工具使用 lodash 的 `_.sortedUniqBy` 函数,专门用于对已排序的数组按指定的属性路径进行高效去重。您只需提供一个 JSON 数组和一个属性路径(如 `id` 或 `user.name`),即可快速获得去除重复项后的唯一值数组。
适用场景
- •当您有一个已按目标字段排序的数组,需要移除连续重复项时。
- •当您需要基于对象中的某个嵌套属性(如 `meta.key`)对数组进行去重时。
- •当您希望快速、无需编写代码地对排序数据进行去重处理时。
工作原理
- •在“数组”输入框中粘贴或输入一个已排序的 JSON 数组。
- •在“属性路径”输入框中指定用于比较和去重的字段路径(例如 `id`、`profile.email`)。
- •点击处理按钮,工具将调用 lodash 的 `_.sortedUniqBy` 函数执行去重。
- •处理完成后,页面将直接显示去重后的 JSON 数组结果。
使用场景
用户案例
1. 用户列表去重
数据分析师- 背景原因
- 从后台导出了一份按用户ID排序的用户信息列表,但列表中存在连续的重复记录。
- 解决问题
- 需要快速移除这些重复的用户记录,以便进行准确的用户计数和分析。
- 如何使用
- 将用户列表JSON数组粘贴到“数组”输入框,在“属性路径”中输入 `id`。
- 效果
- 获得一个仅包含唯一用户的干净列表,重复的连续用户记录被成功移除。
2. 订单数据按客户去重
后端开发者- 背景原因
- 接收到一个按客户ID排序的订单数组,但同一客户的多个连续订单需要被合并为一条记录进行展示。
- 解决问题
- 需要基于嵌套的客户ID字段对订单数组进行去重,以获取每个客户的唯一订单代表。
- 如何使用
- 在“数组”框输入订单数组,在“属性路径”中输入 `customer.id`。
- 示例配置
-
[{"orderId": "A001", "customer": {"id": "C100"}}, {"orderId": "A002", "customer": {"id": "C100"}}, {"orderId": "B001", "customer": {"id": "C200"}}] - 效果
- 输出数组中,客户C100的连续重复订单被合并,只保留第一条,客户C200的订单保持不变。
用 Samples 测试
json, video相关专题
常见问题
输入的数组必须是排序好的吗?
是的,本工具基于 `_.sortedUniqBy`,它假设输入数组已按去重字段排序,仅移除连续的重复项。未排序的数组可能导致去重不完整。
属性路径支持嵌套对象吗?
支持。您可以使用点号分隔的路径来访问嵌套属性,例如 `address.city` 或 `data.0.id`。
处理大量数据时速度如何?
由于算法针对已排序数组优化,其时间复杂度为 O(n),处理速度非常快,适合中等规模的数据集。
输入数组的格式有什么要求?
输入必须是有效的 JSON 数组格式,例如 `[{"id": 1}, {"id": 2}]`。请确保 JSON 语法正确。
输出结果是什么格式?
输出结果是一个去重后的 JSON 数组,格式与输入数组保持一致。