- filter()メソッドを使用する方法: filter()メソッドは、与えられた関数の条件を満たす要素だけを抽出して新しい配列を作成します。
const array1 = [1, 2, 3, 4, 5];
const array2 = [2, 4, 6];
const matchingElements = array1.filter(element => array2.includes(element));
console.log(matchingElements); // [2, 4]
上記の例では、array1とarray2の両方に存在する要素のみが抽出されます。
- forEach()メソッドを使用する方法: forEach()メソッドを使用して、1つの配列の要素を反復処理し、別の配列との一致をチェックすることもできます。
const array1 = [1, 2, 3, 4, 5];
const array2 = [2, 4, 6];
const matchingElements = [];
array1.forEach(element => {
if (array2.includes(element)) {
matchingElements.push(element);
}
});
console.log(matchingElements); // [2, 4]
上記の例では、array1とarray2の両方に存在する要素がmatchingElements配列に追加されます。
- Setオブジェクトを使用する方法: Setオブジェクトを使用すると、重複を許さない一意の値のセットを作成できます。これを利用して、2つの配列の共通要素を見つけることができます。
const array1 = [1, 2, 3, 4, 5];
const array2 = [2, 4, 6];
const set1 = new Set(array1);
const matchingElements = array2.filter(element => set1.has(element));
console.log(Array.from(matchingElements)); // [2, 4]
上記の例では、Setオブジェクトを使用してarray1の要素を一意の値として保持し、filter()メソッドを使用してarray2の中の共通要素を抽出しています。
これらの方法を使用すると、与えられた2つの配列の一致する要素を見つけることができます。応用すれば、他の条件や配列の形式にも適用することができます。