仅将两个数组合并为常用值

时间:2017-04-08 22:06:32

标签: javascript arrays json merge

我看了这个非常受欢迎的SO问题:

How to merge two arrays of JSON objects

OP有这个:

   var array1 = ["Vijendra","Singh"];
   var array2 = ["Singh", "Shakya"];

然后他说,"我希望输出为:"

   var array3 = ["Vijendra","Singh","Shakya"];

我的问题是"你如何才能让Singh成为结果?"

   var array3 = ["Singh"];

换句话说,如何组合两个数组并仅保留两者共有的数据?我已经看过合并,连续,交叉和其他选项,但我似乎无法得到它。

1 个答案:

答案 0 :(得分:2)

您可以过滤,例如来自元素的第一个数组array1也出现在第二个array2数组中。

var array1 = ["Vijendra","Singh"],
    array2 = ["Singh", "Shakya"],
    res = array1.filter(v => array2.indexOf(v) > -1);
    
    console.log(res);