Détails
Trier un tableau d'objets par la valeur d'une propriété de type chaîne de caractères
J'ai un tableau d'objets JavaScript :
var objs = [
{ first_nom: 'Lazslo', last_nom: 'Jamf' },
{ first_nom: 'Pig', last_nom: 'Bodine' },
{ first_nom: 'Pirate', last_nom: 'Prentice' }
];
Comment puis-je les trier par la valeur de last_nom
en JavaScript ?
Je connais la méthode sort(a,b)
, mais elle ne semble fonctionner que sur les chaînes de caractères et les nombres. Dois-je ajouter une méthode toString()
à mes objets ?
2511
3
Il est assez facile d'écrire votre propre fonction de comparaison :
Ou en ligne (c/o Marco Demaio) :
Si vous avez des noms de famille en double, vous pouvez les trier par prénom...
Au lieu d'utiliser une fonction de comparaison personnalisée, vous pouvez également créer un type d'objet avec une méthode
toString()
personnalisée (qui est invoquée par la fonction de comparaison par défaut) :