You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何根据指定accountSoftwareRegUid列表筛选Datasource对象数组中的记录

筛选逻辑实现方案(JavaScript版)

实现逻辑说明

  • 首先将待匹配的uid列表转换为Set结构,O(1)时间复杂度即可完成存在性校验,相比数组遍历查询性能更高
  • 遍历原数据源的所有外层键,对每个键对应的记录数组做过滤,仅保留accountSoftwareRegUid属于匹配集合的记录
  • 过滤后如果对应分组的数组为空,直接剔除该外层键,最终返回保留原有结构的筛选结果

可运行代码示例

// 原数据源
const Datasource = {
  "A": [
    {"accountSoftwareRegUid":1792690,"accountUid":646882,"registrationIdOrOrderItemID":"Not Required For Eval JZ399AAE","registrationType":"RegistrationId"},
    {"accountSoftwareRegUid":1792691,"accountUid":646882,"registrationIdOrOrderItemID":"Not Required For Eval JZ400AAE","registrationType":"RegistrationId"},
    {"accountSoftwareRegUid":1792691,"accountUid":646882,"registrationIdOrOrderItemID":"Not Required For Eval JZ400AAE","registrationType":"RegistrationId"}
  ],
  "B": [
    {"accountSoftwareRegUid":832633,"accountUid":719261,"registrationIdOrOrderItemID":"1168738","registrationType":"order","passPhrase":"AR0005493ARB"},
    {"accountSoftwareRegUid":832675,"accountUid":719261,"registrationIdOrOrderItemID":"1168739","registrationType":"order","passPhrase":"AR0005493ARB"}
  ],
  "C": [
    {"accountSoftwareRegUid":651923,"accountUid":646882,"registrationIdOrOrderItemID":"1384120","registrationType":"order","passPhrase":null,"organisationName":"flyasiana"},
    {"accountSoftwareRegUid":637694,"accountUid":646882,"registrationIdOrOrderItemID":"1116033","registrationType":"order","passPhrase":null,"organisationName":"korea Correctional Service"}
  ]
};

// 待匹配uid列表
const matchUids = [1792690, 832633];
// 转换为Set提升查询效率
const uidSet = new Set(matchUids);

// 执行筛选
const filteredResult = Object.fromEntries(
  Object.entries(Datasource)
    .map(([key, list]) => {
      // 过滤当前分组下符合条件的记录
      const filteredList = list.filter(item => uidSet.has(item.accountSoftwareRegUid));
      return [key, filteredList];
    })
    // 剔除没有匹配记录的空分组
    .filter(([_, list]) => list.length > 0)
);

console.log(filteredResult);

运行上述代码得到的输出与你给出的预期结果完全一致。

内容的提问来源于stack exchange,提问作者user8837476

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.02 16:39:05