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" } ];
und ein Array von gewünschten IDs:
const id_filter = [1, 4, 5, 8];
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)
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));
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!