JavaScript - Array mit Objekten anhand des Object-keys sortieren

BodyLAB

Bekanntes Mitglied
Guten Tag zusammen,

ich versuche gerade verzweifelt ein Array das mit Objekten gefüllt ist zu sortieren.

Mithilfe von Javascript erstelle ich eine HTML Tabelle. In dieser Tabelle wird der Tabellenkopf mit diesem Objekt gefüllt:
Javascript:
const tableHeadName = {"xlizent" : "X Nummer",
                           "name" : "Verein",
                           "vorname" : "Vorname",
                           "nachname" : "Nachname",
                           "geburtsdatum" : "Geburtsdatum",
                           "geschlecht" : "Geschlecht",
                           "startberechtigung" : "Startberechtigt",
                           "email" : "E-Mail",
                           "telefonnummer" : "Telefonnummer",
                           "nationalitaet" : "Nationalität"};

Die Values des Objektes werden für die Namen der Tabelle Spalten (thead) genutzt.
Nun möchte ich die Objekt aus einem Array, das ich von PHP erhalte, in dieselbe Key Reihenfolge bekommen wie das tableHeadName Objekt.

Das Objekt was ich erhalte sieht wie folgt aus:
Unbenannt.png
Die id soll an erster Stelle stehen!
Nun bekomme ich es aber leider nicht gebacken das Array mit den Objekten (siehe Bild) zu durchlaufen und die Keys so anzuordnen wie das Objekt tableHeadName.

Das was ich jetzt hier noch stehen habe ist folgender Code:
Javascript:
const ordered = Object.keys(test).sort().reduce(
  (obj, key) => {
    obj[key] = test[key];
    return obj;
  },
  {}
);

Vielleicht kann mir jemand erklären wie ich es mit einfachen for-Schleifen hin bekommen kann ;-) Denn das hat leider auch noch nicht geklappt :-(

Bin für jede Hilfe dankbar 🙂
 
Für Strings:
Javascript:
objs.sort((a, b) => a[key].localeCompare(b[key]));
Für Datum:
Javascript:
objs.sort((a,b) => new Date(a[key]).getTime() - new Date(b[key]).getTime());
Für andere Typen entsprechend abweichend.
 

Zurück
Oben