ホームページ > 記事 > ウェブフロントエンド > ## 複数の JavaScript 配列にまたがる共通要素を効率的に見つけるにはどうすればよいですか?
複数の JavaScript 配列の間で共通の要素を見つける
JavaScript では、要素が一致するかどうか配列を比較し、共通の値のみを取得することが頻繁に発生するタスクです。次の課題を考えてみましょう。文字列値を持つ複数の配列が与えられた場合、それらのすべてで同一の要素を見つけて表示します。
これを達成するには、JavaScript の関数型プログラミングの概念を活用できます。外部ライブラリを使用せずにこれを効率的に実行する方法は次のとおりです。
var result = arrays.shift().filter(function(v) { return arrays.every(function(a) { return a.indexOf(v) !== -1; }); });
このコードは、filter() メソッドを利用し、指定された条件に合格する要素を含む新しい配列を作成します。 。ここでの条件は、各要素がすべての配列に存在することです。 every() メソッドは、すべての配列に評価対象の要素が含まれているかどうかをチェックすることでこれを保証します。
たとえば、次の配列があるとします。
var arr1 = ['apple', 'orange', 'banana', 'pear', 'fish', 'pancake', 'taco', 'pizza']; var arr2 = ['taco', 'fish', 'apple', 'pizza']; var arr3 = ['banana', 'pizza', 'fish', 'apple'];
結果は次のようになります。 be:
['apple', 'fish', 'pizza']
このソリューションは比較的簡潔で、重複を導入することなくさまざまな長さの配列を処理します。最適なパフォーマンスを得るには、配列を昇順で並べ替える必要があることに注意することが重要です。
以上が## 複数の JavaScript 配列にまたがる共通要素を効率的に見つけるにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。