EDIT: Bitte überprüfen Sie Andys Antwort da seine Antwort zuerst kam und dies nur eine Erweiterung seiner ist
Ich weiß, dass dies eine alte Frage ist, aber ich denke, es lohnt sich, sie aufzunehmen Array.prototype.sort()
.
Hier ist ein Beispiel von MDN zusammen mit dem Link
var numbers = [4, 2, 5, 1, 3];
numbers.sort(function(a, b) {
return a - b;
});
console.log(numbers);
// [1, 2, 3, 4, 5]
Zum Glück funktioniert es nicht nur mit Zahlen:
arr.sort([compareFunction])
compareFunction
Gibt eine Funktion an, die die Sortierreihenfolge definiert. Wenn nicht angegeben, wird das Array nach dem Unicode-Codepunktwert jedes Zeichens gemäß der Zeichenfolgenkonvertierung jedes Elements sortiert.
Mir ist aufgefallen, dass Sie sie mit Vornamen bestellen:
let playlist = [
{artist:"Herbie Hancock", title:"Thrust"},
{artist:"Lalo Schifrin", title:"Shifting Gears"},
{artist:"Faze-O", title:"Riding High"}
];
// sort by name
playlist.sort((a, b) => {
if(a.artist < b.artist) { return -1; }
if(a.artist > b.artist) { return 1; }
// else names must be equal
return 0;
});
Beachten Sie, dass Sie, wenn Sie sie nach Nachnamen bestellen möchten, entweder einen Schlüssel für beide first_name
& haben müssenlast_name
oder eine regex Magie tun, was ich nicht tun kann , XD
Hoffentlich hilft das :)