JavaScript Namen zu Nachnamen sortieren?

2 Antworten

Wenn du für die Wahl des Vornamens erst einen zufälligen Index generierst, könntest du den auch nutzen, um den Nachnamen zu ermitteln. Voraussetzung ist natürlich, dass alle Namenspaare (Vor- und Nachname) in den Listen an jeweils selber Stelle stehen.

Generell wäre es besser, nur eine Liste anzulegen, die Objekte speichert, welche wiederum jeweils Vor- und Nachname beinhalten.

const persons = [
  { firstname: "John", lastname: "Doe" },
  { firstname: "Mary", lastname: "Sue" },
  /* etc. */
];

Aus der kann man anschließend einen zufälligen Wert herausholen.


Luna93136 
Fragesteller
 13.12.2022, 16:47

Ja genau so habe ich auch meine Liste aber jetzt weiß ich irgendwie nicht weiter

0
regex9  13.12.2022, 19:23
@Luna93136

Auf Properties eines Objekts kann über den Punktoperator zugegriffen werden.

Beispiel:

console.log(yourObject.firstname + " " + yourObject.lastname);
0

Um eine Liste von Namen in JavaScript zu sortieren, kann man die sort()-Methode der Array-Klasse verwenden. Hier ein Beispiel:

Bild zum Beitrag

Die sort()-Methode sortiert die Elemente eines Arrays in alphabetischer Reihenfolge. Wenn du die Namen nach dem Nachnamen sortieren möchtest, kannst du eine benutzerdefinierte Sortierfunktion verwenden, die den Nachnamen jedes Namens extrahiert und diese verwendet, um die Namen zu vergleichen.

Bild zum Beitrag

In diesem Beispiel wird jeder Name in der Liste in zwei Teile geteilt: den Vornamen und den Nachnamen. Dann werden die Nachnamen verglichen und die Namen werden entsprechend sortiert. Die Sortierfunktion gibt einen negativen Wert zurück, wenn der Nachname von a vor dem Nachnamen von b kommt, einen positiven Wert, wenn der Nachname von a nach dem Nachnamen von b kommt und 0, wenn sie gleich sind.

Woher ich das weiß:Studium / Ausbildung
 - (programmieren, HTML, JavaScript)  - (programmieren, HTML, JavaScript)