Heim >Web-Frontend >js-Tutorial >Wie kann ich doppelte Werte in einem JavaScript-Array effizient zählen?

Wie kann ich doppelte Werte in einem JavaScript-Array effizient zählen?

Barbara Streisand
Barbara StreisandOriginal
2024-12-03 06:21:09638Durchsuche

How Can I Efficiently Count Duplicate Values in a JavaScript Array?

Doppelte Werte in Arrays mit JavaScript zählen

Bei der Programmierung ist es oft notwendig, doppelte Werte innerhalb eines Arrays zu identifizieren und zu zählen. Betrachten wir ein Array wie dieses:

var uniqueCount = Array();

Nach einigen Operationen enthält das Array nun Folgendes:

uniqueCount = [a,b,c,d,d,e,a,b,c,f,g,h,h,h,e,a];

Unser Ziel ist es zu zählen, wie viele Vorkommen jedes einzelnen Werts in diesem Array vorhanden sind . Unser Ziel ist ein Ergebnis wie:

a = 3
b = 1
c = 2
d = 2

Eine effektive Möglichkeit, Duplikate in JavaScript zu zählen, ist die Verwendung eines Objekts. Lassen Sie uns diese Lösung untersuchen:

const counts = {};
const sampleArray = ['a', 'a', 'b', 'c'];
sampleArray.forEach(function (x) { counts[x] = (counts[x] || 0) + 1; });
console.log(counts);

Dieser Code verwendet ein Objekt namens counts, um die Häufigkeit jedes Werts im SampleArray zu speichern. Die forEach-Methode durchläuft das Array und für jeden gefundenen Wert wird das counts-Objekt aktualisiert. Wenn der Wert bereits im Objekt vorhanden ist, wird seine Anzahl erhöht; andernfalls wird es auf eins initialisiert. Abschließend wird das counts-Objekt in der Konsole protokolliert und liefert die gewünschte Ausgabe:

{ a: 2, b: 1, c: 1 }

Das obige ist der detaillierte Inhalt vonWie kann ich doppelte Werte in einem JavaScript-Array effizient zählen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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