Heim > Web-Frontend > js-Tutorial > Wie finde ich gemeinsame Elemente in mehreren JavaScript-Arrays?

Wie finde ich gemeinsame Elemente in mehreren JavaScript-Arrays?

Barbara Streisand
Freigeben: 2024-10-24 16:42:02
Original
849 Leute haben es durchsucht

How to Find Common Elements in Multiple JavaScript Arrays?

Übereinstimmungen zwischen mehreren JavaScript-Arrays finden

Frage:

Wie können Sie mehrere JavaScript-Arrays vergleichen? Arrays, die Zeichenfolgenwerte enthalten, und extrahieren nur die Übereinstimmungen, die in allen Arrays identisch sind?

Antwort:

Verwenden Sie den folgenden Codeausschnitt für genaue Übereinstimmungen:

<code class="js">var result = arrays.shift().filter(function(v) {
    return arrays.every(function(a) {
        return a.indexOf(v) !== -1;
    });
});</code>
Nach dem Login kopieren

Diese Implementierung durchläuft jedes Element im ersten Array, prüft mithilfe von indexOf, ob es in allen anderen Arrays vorhanden ist, und fügt es bedingt zum Ergebnisarray hinzu. Beachten Sie, dass davon ausgegangen wird, dass in keinem der Eingabearrays Duplikate vorhanden sind.

Wenn Sie Duplikate innerhalb der Eingabearrays verarbeiten müssen, verwenden Sie den folgenden Code:

<code class="js">var result = arrays.shift().reduce(function(res, v) {
    if (res.indexOf(v) === -1 &amp;&amp; arrays.every(function(a) {
        return a.indexOf(v) !== -1;
    })) res.push(v);
    return res;
}, []);</code>
Nach dem Login kopieren

Diese Version verwendet die Reduzierung Methode zum Sammeln übereinstimmender Elemente über Arrays hinweg. Duplikate werden herausgefiltert, indem indexOf im Ergebnisarray überprüft wird.

Das obige ist der detaillierte Inhalt vonWie finde ich gemeinsame Elemente in mehreren JavaScript-Arrays?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage