Wie Objekte von Objekten Asc und Desc mit Lodash zu sortieren?Lodash - Objekte in Objekt sortieren (desc und asc)
Zum Beispiel möchte ich es nach 'r' oder 'd' sortieren.
Dies ist, wie mein Objekt wie folgt aussieht:
Wie Objekte von Objekten Asc und Desc mit Lodash zu sortieren?Lodash - Objekte in Objekt sortieren (desc und asc)
Zum Beispiel möchte ich es nach 'r' oder 'd' sortieren.
Dies ist, wie mein Objekt wie folgt aussieht:
Platz interne Objekte in der Anordnung und Verwendung Funktion sortBy()
var users = [
{ 'user': 'fred', 'age': 48 },
{ 'user': 'barney', 'age': 36 },
{ 'user': 'fred', 'age': 40 },
{ 'user': 'barney', 'age': 34 }
];
_.sortBy(users, function(o) { return o.user; });
// → objects for [['barney', 36], ['barney', 34], ['fred', 48], ['fred', 40]]
console.log(users.reverse()); // desc order
reine JS ist auch sehr einfach und man kann so etwas tun ;
var obj = {a:16, b:2, c:8, d:4, e:1},
okeys = Object.keys(obj),
sorted = {};
okeys.sort((p,c) => obj[p] <= obj[c]).forEach((p,i) => sorted[okeys[i]] = obj[p]);
document.write('<pre> ' + JSON.stringify(sorted, 0, 2) + '</pre>');
Ich Sortierobjekteigenschaften entsprechend ihrer numerischen Werte. Ihre Werte könnten Objekte sein, und Sie könnten auch nach diesen Objekten Eigenschaftswerte sortieren. Aber ich kann nicht sagen, was ein vernünftiger Grund dafür sein könnte.
Meinen Sie, indem Sie Objekte auf verschiedene Schlüssel in einer sortierten Reihenfolge platzieren ..? Wenn ja, können Sie dies einfach durch reines JS tun. Eine Möglichkeit besteht darin, sie in ein Array zu verschieben und dort zu sortieren und dann in sortierter Reihenfolge zurück in das obj zu kopieren. Oder Sie fügen Ihrem Master-Objekt eine Längeneigenschaft mit einem Wert für die Gesamtzahl der Objektelemente hinzu und führen dann Array aus. prototype.sort.call (obj, callback) – Redu
Laut der JavaScript-Spezifikation haben die Eigenschaften eines Objekts keine Reihenfolge. Es gibt keine "erste" oder "letzte" Eigenschaft; Sie können nicht sortiert werden. Unabhängig von der Reihenfolge, in der Sie sie zuweisen (oder in der Reihenfolge, in der sie in der Konsole angezeigt werden), ist es nicht garantiert, dass sie in einer bestimmten Reihenfolge zurückgegeben werden, wenn Sie sie aufzählen. Wenn Sie eine geordnete Datenstruktur benötigen, verwenden Sie ein Array. –