gpt4 book ai didi

javascript - 使用 JSON 值实现数组交集

转载 作者:行者123 更新时间:2023-11-30 08:54:28 26 4
gpt4 key购买 nike

我有一个包含 JSON 对象的数组,例如

validTags = [{"tag":"tag1"}, {"tag":"tag2"}]; 

items = [{"id":123456, "tag":"tag1"}, {"id":123456, "tag":"tag2"}, {"id":7890, "tag":"tag1"}]; 

我正在尝试从第一个数组中找出具有两个“标签”的 ID。

例如输出将是:

[{"id":123456, "tag":"tag1 tag2"}]

将两个匹配的标签组合成一个字符串。

我应该如何去做这件事有什么想法吗?我最近在 Javascript 聊天室与一些 SO 用户聊天,他们建议可以使用数组交集,但我不完全确定我将如何使用它来获得我预期的 JSON 结果:(

感谢所有答案/帮助!

非常感谢

最佳答案

javascript中没有set操作,但是很容易定义,例如:

intersection = function(a, b) {
return a.filter(function(x) { return b.indexOf(x) >= 0 })
}

对于您的特定任务,首先将 validTags 转换为列表:

vtags = validTags.map(function(x) { return x.tag }) 

然后计算一个交集,将 items 中的每个 tag 属性转换成一个数组:

results = items.filter(function(x) {
return intersection(x.tag.split(/\s+/), vtags).length == vtags.length
})

关于javascript - 使用 JSON 值实现数组交集,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14897712/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com