EDIT: Veuillez consulter la réponse d'Andy car sa réponse est venue en premier et ce n'est qu'une extension de son
Je sais que c'est une vieille question, mais je pense que cela vaut la peine de l'inclure Array.prototype.sort()
.
Voici un exemple de MDN avec le lien
var numbers = [4, 2, 5, 1, 3];
numbers.sort(function(a, b) {
return a - b;
});
console.log(numbers);
// [1, 2, 3, 4, 5]
Heureusement, cela ne fonctionne pas uniquement avec les nombres:
arr.sort([compareFunction])
compareFunction
Spécifie une fonction qui définit l'ordre de tri. S'il est omis, le tableau est trié en fonction de la valeur du point de code Unicode de chaque caractère, en fonction de la conversion de chaîne de chaque élément.
J'ai remarqué que vous les commandez par prénom:
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;
});
Notez que si vous vouliez les commander par nom de famille que vous devez soit avoir une clé pour les deux first_name
et last_name
ou faire de la magie regex, que je ne peux pas XD
J'espère que cela pourra aider :)