分类

排序按字段去重

使用 lodash _.sortedUniqBy 为排序数组按字段去重

按属性路径对排序数组进行去重。

亮点:

  • 使用 lodash _.sortedUniqBy
  • 支持属性路径(如 idmeta.key
  • 返回 JSON 格式的结果

示例:

  • 数组:[{"id": 1}, {"id": 1}, {"id": 2}]
  • 路径:id
  • 结果:[{"id": 1}, {"id": 2}]

输入 JSON 数组

用于比较的属性路径

关键信息

分类
Data Processing
输入类型
textarea, text
输出类型
text
样本覆盖
4
支持 API
Yes

概览

本工具使用 lodash 的 `_.sortedUniqBy` 函数,专门用于对已排序的数组按指定的属性路径进行高效去重。您只需提供一个 JSON 数组和一个属性路径(如 `id` 或 `user.name`),即可快速获得去除重复项后的唯一值数组。

适用场景

  • 当您有一个已按目标字段排序的数组,需要移除连续重复项时。
  • 当您需要基于对象中的某个嵌套属性(如 `meta.key`)对数组进行去重时。
  • 当您希望快速、无需编写代码地对排序数据进行去重处理时。

工作原理

  • 在“数组”输入框中粘贴或输入一个已排序的 JSON 数组。
  • 在“属性路径”输入框中指定用于比较和去重的字段路径(例如 `id`、`profile.email`)。
  • 点击处理按钮,工具将调用 lodash 的 `_.sortedUniqBy` 函数执行去重。
  • 处理完成后,页面将直接显示去重后的 JSON 数组结果。

使用场景

清洗从数据库导出的已按ID排序的用户列表,去除重复的用户记录。
处理按时间排序的API响应数据,基于某个唯一标识符(如订单号)去除重复条目。
分析日志文件时,对已按错误代码排序的条目进行去重,快速统计唯一错误类型。

用户案例

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 数组,格式与输入数组保持一致。

API 文档

请求端点

POST /zh/api/tools/sorted-unique-by

请求参数

参数名 类型 必填 描述
array textarea 输入 JSON 数组
path text 用于比较的属性路径

响应格式

{
  "result": "Processed text content",
  "error": "Error message (optional)",
  "message": "Notification message (optional)",
  "metadata": {
    "key": "value"
  }
}
文本: 文本

AI MCP 文档

将此工具添加到您的 MCP 服务器配置中:

{
  "mcpServers": {
    "elysiatools-sorted-unique-by": {
      "name": "sorted-unique-by",
      "description": "使用 lodash _.sortedUniqBy 为排序数组按字段去重",
      "baseUrl": "https://elysiatools.com/mcp/sse?toolId=sorted-unique-by",
      "command": "",
      "args": [],
      "env": {},
      "isActive": true,
      "type": "sse"
    }
  }
}

你可以串联多个工具,比如:`https://elysiatools.com/mcp/sse?toolId=png-to-webp,jpg-to-webp,gif-to-webp`,最多20个。

如果遇见问题,请联系我们:[email protected]