当前位置: 首页 > 知识库问答 >
问题:

解析数组的数组并返回公共交点

孟思远
2023-03-14

我有一个像这样的数组

    arrays = [
        ['a', 'b', 'c', 'd'],
        ['a', 'b', 'c', 'g'],
        ['a', 'b', 'c', 'g', 'x'],
    ]

我需要把所有的交集组成一个阵列。就像这样。

    function get_intersects(arrays) {
        // return all intersections
        return ['a', 'b', 'c', 'g'];
    }

这是我的尝试,但g丢失了。

arrays = [
    ['a', 'b', 'c', 'd'],
    ['a', 'b', 'c', 'g'],
    ['a', 'b', 'c', 'g', 'x'],
]

function get_intersects(arrays) {
    return arrays.shift().filter(function (v) {
        return arrays.every((a) => a.indexOf(v) !== -1 );
    });
}



console.log(get_intersects(arrays))

共有1个答案

梁鸿风
2023-03-14

如果您的目标是确定单个字母是否至少在数组的2个中,您可以只计算它们。不清楚内部数组是否可以重复['a','b','c','g','x','x']。假设这些表示集合,并且不会有重复的成员,这只是一个计数和过滤计数大于1的任何内容的问题:

var arrays = [
    ['a', 'b', 'c', 'g'],
    ['a', 'b', 'c', 'd'],
    ['a', 'b', 'c', 'g', 'x'],
]

var counts = arrays.reduce((counts, arr) => {
    arr.forEach(c => counts[c] = (counts[c] || 0) + 1)
    return counts
}, {})

let common = Object.keys(counts).filter(k => counts[k] > 1)
console.log(common)
 类似资料:
  • 问题内容: 我想要一个带字符串并返回一个数组的Python函数,该数组中的每个项目都是字符,或者是这种类型的另一个数组。嵌套数组在输入字符串中以’(’开始,以’)’结尾。 因此,该函数将如下所示: 注意:我更喜欢纯功能的解决方案。 问题答案: 和,

  • 本文向大家介绍JS数组返回去重后数据的方法解析,包括了JS数组返回去重后数据的方法解析的使用技巧和注意事项,需要的朋友参考一下 话不多说,请看代码: 以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持呐喊教程!

  • 问题内容: 我看到许多人都遇到过类似的问题,但是我还没有尝试确切地找到我想要的东西。 因此,我有一个读取输入图像并将其转换为字节数组的方法: 我现在要做的是将其转换回BufferedImage(我有一个需要此功能的应用程序)。请注意,“ test”是字节数组。 但是,这将返回以下异常: 这是因为BufferedImage img为空。我认为这与以下事实有关:在我从BufferedImage到字节数

  • 我正在尝试使用Mongo聚合框架来找出我文档中的数组和另一个用户定义的数组之间的交集。我没有得到正确的结果,我的猜测是因为我在数组中有数组。 这是我的数据集。 我的文档: 我的查询: 结果: 我不希望第一个公共字段为空。有人能告诉我我做错了什么吗?或者我能采取的任何变通办法。 我正在使用MongoDB 3.0.8。我知道Mongob 3.2可以提供一些功能来满足我的需求,但3.2升级不会很快在我们

  • Milo Yip 2016/10/13 本文是《从零开始的 JSON 库教程》的第五个单元解答篇。解答代码位于 json-tutorial/tutorial05_answer。 1. 编写 test_parse_array() 单元测试 这个练习纯粹为了熟习数组的访问 API。新增的第一个 JSON 只需平凡的检测。第二个 JSON 有特定模式,第 i 个子数组的长度为 i,每个子数组的第 j 个