一尘不染

JavaScript中数组交集的最简单代码

javascript

在javascript中实现数组交集的最简单,无库代码是什么?我想写

intersection([1,2,3], [2,3,4,5])

并得到

[2, 3]

阅读 385

收藏
2020-04-22

共1个答案

一尘不染

使用的组合Array.prototype.filterArray.prototype.indexOf

array1.filter(value => -1 !== array2.indexOf(value))

或者,如vrugtehagel在注释中建议的那样,您可以使用更新Array.prototype.includes的代码甚至更简单的代码:

array1.filter(value => array2.includes(value))

对于较旧的浏览器:

array1.filter(function(n) {
    return array2.indexOf(n) !== -1;
});
2020-04-22