请求获取相同服务和函数下的名称差异版本
请求获取相同服务和函数下的名称差异版本
嘿,看起来你想找出在相同Service和Function分组下,名称(Name)存在差异的资产版本对吧?先把你提供的原始JSON数据整理成可读性更好的格式(修正了转义字符和部分拼写小问题):
[ { "Id": 1, "Name": "Asset A", "Version": 1, "Function": "Song", "Service": "Song" }, { "Id": 2, "Name": "Asset B", "Version": 1, "Function": "IndustryX", "Service": "IndustryX" }, { "Id": 3, "Name": "Asset C", "Version": 1, "Function": "Strategy", "Service": "IndustryX" }, { "Id": 4, "Name": "Asset D", "Version": 1, "Function": "Strategy", "Service": "IndustryX" }, { "Id": 5, "Name": "Asset D", "Version": 1, "Function": "Cross Function", "Service": "IndustryX" }, { "Id": 6, "Name": "Asset E" } ]
如果是想用代码来筛选这类条目,这里给个JavaScript的实现示例,你可以直接运行验证:
const assets = [ // 放入上面整理好的JSON数组内容 ]; // 按「Service-Function」组合分组,收集每个组的所有Name const groupedAssets = {}; assets.forEach(asset => { const groupKey = `${asset.Service}-${asset.Function}`; if (!groupedAssets[groupKey]) { groupedAssets[groupKey] = new Set(); } groupedAssets[groupKey].add(asset.Name); }); // 筛选出包含多个不同Name的分组 const nameDiffGroups = Object.entries(groupedAssets).filter(([key, names]) => names.size > 1); console.log("存在名称差异的服务-函数组:", nameDiffGroups);
这段代码的逻辑很简单:先把所有资产按Service和Function的组合做分组,然后检查每个分组里的Name是否有多个不同值,最后输出那些存在差异的分组。
如果需要其他编程语言的实现(比如Python、Java),或者更具体的需求(比如要列出每个分组下的所有差异资产详情),随时补充说明哦!
备注:内容来源于stack exchange,提问作者Pinky
相关产品推荐
相关产品推荐

