Heim > Web-Frontend > js-Tutorial > Wie kann ich in JavaScript effizient eindeutige Werte aus einem Array von Objekten abrufen?

Wie kann ich in JavaScript effizient eindeutige Werte aus einem Array von Objekten abrufen?

Patricia Arquette
Freigeben: 2024-12-05 05:17:09
Original
683 Leute haben es durchsucht

How to Efficiently Retrieve Unique Values from an Array of Objects in JavaScript?

Eindeutige Werte aus Arrays von Objekten in JavaScript abrufen

Optimaler Ansatz

Um effizient abzurufen Um eindeutige Werte aus einem Array von Objekten zu erhalten, kann eine Kombination aus dem Spread-Operator und der Set-Datenstruktur verwendet werden. In ES6 und späteren Versionen von JavaScript wird der folgende Ansatz dringend empfohlen:

const data = [
  { name: "Joe", age: 17 },
  { name: "Bob", age: 17 },
  { name: "Carl", age: 35 }
];

const distinctAges = [...new Set(data.map(item => item.age))];

console.log(distinctAges); // [17, 35]
Nach dem Login kopieren

Dieser Ansatz nutzt die Leistung von Set, um doppelte Werte zu entfernen, und den Spread-Operator, um aus den eindeutigen Werten ein neues Array zu erstellen. Die Kartenfunktion iteriert über das Array und extrahiert nur die Alterseigenschaftswerte zur weiteren Verarbeitung.

Alternative Datenstruktur

Bei Strukturierung der Daten als Array von Objekten mit Eindeutigkeit Schlüssel bevorzugt wird, kann eine Map-Datenstruktur verwendet werden:

const data = new Map([
  ["1", { name: "Joe", age: 17 }],
  ["2", { name: "Bob", age: 17 }],
  ["3", { name: "Carl", age: 35 }]
]);

const distinctAges = [...data.values()].map(item => item.age);

console.log(distinctAges); // [17, 35]
Nach dem Login kopieren

In diesem Szenario ist die Datenvariable eine Map mit eindeutigen Schlüsseln (z. B. „1“, „2“, „3“) und entsprechende Objektwerte. Um die unterschiedlichen Altersstufen abzurufen, wird mit der Eigenschaft „values“ ein Array von Werten erstellt, die dann zugeordnet werden, um nur die Werte der Alterseigenschaft zu extrahieren.

Vermeidung ineffizienter Iteration

Durch die Nutzung der Set-Datenstruktur oder der Map-Datenstruktur wie oben beschrieben wird es unnötig, jedes Array-Element zu durchlaufen und auf vorhandene Werte zu prüfen. Diese Datenstrukturen handhaben die Eindeutigkeit nativ und bieten eine effizientere Lösung, ohne dass eine umständliche Iteration erforderlich ist.

Das obige ist der detaillierte Inhalt vonWie kann ich in JavaScript effizient eindeutige Werte aus einem Array von Objekten abrufen?. 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