Trier un tableau en Javascript est d'une simplicité enfantine,
mais trier un tableau d'objets est un tout petit peu moins évident
...
Pour cet exemple, nous prendrons un tableau d'objets se présentant sous la forme suivante :
[
{ code: 68, department: 'Haut-Rhin' },
{ code: 89, department: 'Yonne' },
{ code: 31, department: 'Haute-Garonne' },
{ code: 29, department: 'Finistère' },
{ code: 68, department: 'Haut-Rhin' },
{ code: 75, department: 'Île de France'}
]
Trions le tableau
Le langage Javascript possède une fonction sobrement intitulé "sort" qui marche à merveille dans le cas d'un simple tableau. Seulement, par rapport au JSON précédent, il se peut que vous ayez le besoin de trier selon le "code" ou encore le "department". Pour ce faire, vous pouvez procéder comme suit :
// Trie par 'code'
items.sort(function (a, b) {
if (a.code > b.code)
return 1;
if (a.code < b.code)
return -1;
return 0;
});
// Trie par 'department'
items.sort(function (a, b) {
if (a.department > b.department)
return 1;
if (a.department < b.department)
return -1;
return 0;
});