【问题标题】:How to check duplicate element in 2 arrays with a function in JavaScript? [duplicate]如何使用 JavaScript 中的函数检查 2 个数组中的重复元素? [复制]
【发布时间】:2021-09-21 21:57:34
【问题描述】:

我想创建一个函数来检查 2 个数组是否是子集,如果是则返回 true,否则返回 false

例如,如果: x = ["鲍勃","ADA","肯"] y = [“肯”,“鲍勃”] 返回真

x = ["BOB","ADA","KEN"] y = [“肯”,“鲍勃”,“丹”] 返回错误

关于如何创建这个函数有什么建议吗?

【问题讨论】:

    标签: javascript arrays


    【解决方案1】:

    您可以通过第一个过滤第二个数组,看看之后是否还有任何剩余。如果是这样,它们就不会重叠。

    const hasOverlap = (arr1, arr2) => arr2.filter(a => !arr1.includes(a)).length === 0
    
    let x = ["BOB","ADA","KEN"], y = ["KEN", "BOB" ] 
    console.log(hasOverlap(x,y))
    
    x = ["BOB","ADA","KEN"]
    y = ["KEN", "BOB", "JOE"] 
    console.log(hasOverlap(x,y))

    【讨论】:

    • 谢谢!如果我想编写一个以两个数组作为输入的函数来执行此操作呢?
    • 不确定你的意思,这需要 2 个数组作为输入。你能用你的意思+预期结果更新你的问题吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-08-06
    • 1970-01-01
    • 2018-09-17
    • 2017-03-17
    • 1970-01-01
    • 2021-10-15
    相关资源
    最近更新 更多