JavaScript で配列の交差を行う最も簡単なコード 質問する

JavaScript で配列の交差を行う最も簡単なコード 質問する

JavaScriptで配列の交差を実装するための最もシンプルでライブラリを必要としないコードは何ですか?

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

そして

[2, 3]

ベストアンサー1

組み合わせて使用​​するArray.prototype.filterそしてArray.prototype.includes:

const filteredArray = array1.filter(value => array2.includes(value));

古いブラウザの場合、Array.prototype.indexOf矢印関数がない場合:

var filteredArray = array1.filter(function(n) {
    return array2.indexOf(n) !== -1;
});

注意! と はどちらも.includes.indexOf使って配列内の要素を内部的に比較します===。そのため、配列にオブジェクトが含まれている場合は、オブジェクト参照のみを比較します(その内容は比較しません)。独自の比較ロジックを指定したい場合は、Array.prototype.someその代わり。

おすすめ記事