Schleife durch den array von Objekten zu finden-Objekt mit dazugehörigen Grundstück
Habe ich 1 array mit einer Liste der alle meine Benutzer mit eindeutigen IDs. Ich habe ein Objekt, das enthält eine ausgewählte Gruppe Informationen. Teil dieser information ist die Eigentümer-ID. Ich versuche, herauszufinden, wie bekomme ich die Benutzer die Informationen gegeben, die Gruppen, die Besitzer-ID? Zum Beispiel die Studenten-Gruppe Objekt hat einen Eigentümer-ID 70 gibt es ein user auf meinen Seiten, die ID 70 ist...wie kann ich passen Sie?
users:
[ {
id: 68
name: mike
domain: i:0#.f|admembers|mike.ca
email: mike.ca
isAdmin: False
}, etc etc ]
selectedGroup: {
name: Students
id: 78
description:
owner: 70
ownerIsUser: True
}
Du musst angemeldet sein, um einen Kommentar abzugeben.
Haben Sie, um eine Schleife durch
users
:Oder verwenden Sie
Array.filter()
:i
wird initialisiert, um die Länge Ihrerusers
array, und es wird erniedrigt in der while-Schleife unten. Wenni
0 erreicht, wird die Schleife ein letztes mal und enden. Ist es eine Schleife durch das array in umgekehrter.In ECMAScript 6, Sie könnte verwenden Sie die native
Array.finden
Methode:Sehen als nur die neueste Firefox unterstützt das für den Augenblick, könnten Sie eine Bibliothek wie underscore.js:
...oder man könnte ein wrapper um die etwas weniger aktuelle
forEach
Methode:Aber wenn Sie wollen, um Skript verwenden werde, die Unterstützung von legacy-Browser ohne die Verwendung von Bibliotheken, benötigen Sie eine for-Schleife:
Haben Sie einen Blick auf Underscore.js zu verharmlosen dies, wie auch so:
Natürlich könnten Sie übergeben in eine variable zu entsprechen wie:
findWhere
und kopieren Sie es aus.Könnte man einfach Schleife über das array, das zu toppen:
Wenn bei der Arbeit mit bestehenden javascript-Objekte, die ich denke, dass ein brute-force-Lösung ist die einzige option:
Je nachdem, wie Sie es verwenden, kann es effizienter sein, zu restrukturieren Ihre ersten Objekts, so kann man direkt auf eine Eigenschaft:
Können Sie auch Arrays verwendet werden.der Prototyp.einige vergleichen Sie alle Objekte, die Eigenschaften zu sehen, wenn Sie enthalten die gleichen Werte.