Eingabe:
%Vor% Erstellen Sie zuerst ein Indexobjekt mit _.reduce
, wie diesem
Und dann map
die Elemente des ersten Arrays mit den Objekten aus dem indexObject
, wie dieses
Ausgabe
%Vor%Hinweis: Diese Methode ist sehr effizient, wenn Sie so viele Objekte sortieren möchten, weil dadurch die lineare Suche im zweiten Array reduziert wird, wodurch die gesamte Logik in O ( M * N) Zeitkomplexität.
Sie können indexBy () und at () , um Ihre Sammlung zu sortieren. Der Vorteil ist, dass Code und Performance prägnant sind. Die Verwendung von sortBy()
macht hier den Trick, aber Ihr externes Array ist bereits sortiert:
Mit at()
können Sie über die sortierte externe Sammlung iterieren und eine neue Sammlung aus der Quelle collection
erstellen. Die Quellensammlung wurde mit indexBy()
in ein Objekt transformiert. Sie tun dies, indem Sie bei () für jedes% code% -Zugriff einen Schlüsselzugriff verwenden.% Co_de%.
Tags und Links javascript arrays collections underscore.js lodash