Heim > Web-Frontend > js-Tutorial > Wie filtere ich ein Array von Objekten basierend auf IDs aus einem anderen Array?

Wie filtere ich ein Array von Objekten basierend auf IDs aus einem anderen Array?

Barbara Streisand
Freigeben: 2024-12-10 20:04:11
Original
728 Leute haben es durchsucht

How to Filter an Array of Objects Based on IDs from Another Array?

Auf bestimmte Objekte in einem Array abzielen

Das Filtern eines Arrays von Objekten basierend auf einem anderen Array kann in verschiedenen Szenarien nützlich sein. Stellen Sie sich ein Szenario vor, in dem wir über ein Array von Personenobjekten und ein zusätzliches Array verfügen, das bestimmte Identifikatoren (z. B. IDs) enthält.

Gegeben ein Array von Personen:

const people = [
  { id: "1", name: "abc", gender: "m", age: "15" },
  { id: "2", name: "a", gender: "m", age: "25" },
  { id: "3", name: "efg", gender: "f", age: "5" },
  { id: "4", name: "hjk", gender: "m", age: "35" },
  { id: "5", name: "ikly", gender: "m", age: "41" },
  { id: "6", name: "ert", gender: "f", age: "30" },
  { id: "7", name: "qwe", gender: "f", age: "31" },
  { id: "8", name: "bdd", gender: "m", age: "78" }
];
Nach dem Login kopieren

und ein Array von gewünschten IDs:

const id_filter = [1, 4, 5, 8];
Nach dem Login kopieren

Objekte mit Array.filter filtern

Zum Filtern Um das Array von Personen basierend auf den bereitgestellten IDs zu erstellen, können wir die filter()-Methode des Arrays verwenden. Diese Methode akzeptiert eine Rückruffunktion, die jedes Element des Arrays empfängt und einen booleschen Wert zurückgibt. Um unseren Filteranforderungen gerecht zu werden, definieren wir unsere Rückruffunktion wie folgt:

person => id_filter.includes(person.id)
Nach dem Login kopieren

Diese Rückruffunktion prüft im Wesentlichen, ob die ID der aktuellen Person im id_filter-Array vorhanden ist. Wenn es gefunden wird, wird true zurückgegeben. andernfalls wird false zurückgegeben.

Mithilfe dieser Rückruffunktion können wir jetzt unser Array von Personen filtern:

const filteredPeople = people.filter(person => id_filter.includes(person.id));
Nach dem Login kopieren

Das resultierende Array „filteredPeople“ enthält nur die Objekte aus dem ursprünglichen Array, deren IDs Passen Sie die Werte in id_filter an.

Das obige ist der detaillierte Inhalt vonWie filtere ich ein Array von Objekten basierend auf IDs aus einem anderen Array?. 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