代码之家  ›  专栏  ›  技术社区  ›  Stefan

Javascript:获取所有数组中包含的值[重复]

  •  0
  • Stefan  · 技术社区  · 8 年前

    有多个阵列

    1. [1,2,3]
    2. [2,3,4]
    3. [2,4,5]

    现在我想获取所有数组中包含的值。在这个例子中 [2] . 有没有简单的方法可以做到这一点?

    我累了 https://stackoverflow.com/a/14438954/639035 然而,如果我在三个数组之后尝试,我会得到错误的结果(将包括4个)。

    使现代化 发布的答案有效,错误在我代码的另一部分

    2 回复  |  直到 8 年前
        1
  •  2
  •   Ele    8 年前

    您可以使用:

    例子:

    let a1 = [1, 2, 3];
    let a2 = [2, 3, 4];
    let a3 = [2, 4, 5];
    
    let result = a1.filter(v => a2.includes(v) && a3.includes(v));
    
    console.log(result);
        2
  •  0
  •   Ele    8 年前

    这将起作用:

    let a = [1,2,3];
    let b = [2,3,4];
    let c = [2,4,5];
    
    let result = a.reduce((total, elem) => {
        if((b.indexOf(elem) !== -1) && (c.indexOf(elem) !== -1)) {
            total.push(elem);
        }
        return total;
    }, []);
    
    console.log(result);
    
    推荐文章