Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
 
function tri( a, b )
{
 
//return a[0] - b[0];
//ou
 
var v1 = parseInt(a[0]);
var v2 = parseInt(b[0]);
if ( v1 < v2 ) return -1;
if ( v1 > v2 ) return 1;
return 0;
 
}
Mon problème:
un tableau trié sur une clé ayant des valeurs égales ne se tri pas correctement. Souvent la clé du milieu (c'est à dire ayant pour indice la moitié du nombre d'entrées) se retrouve en tête du tableau et le reste inchangé.

Ex:

tableau initial

0 => 0
1 => 0
2 => 0
3 => 0
4 => 0
5 => 0
6 => 0
7 => 0
8 => 0
9 => 0
10 => 0

devient

5 => 0
0 => 0
2 => 0
3 => 0
4 => 0
1 => 0
6 => 0
7 => 0
8 => 0
9 => 0
10 => 0

Merci pour votre aide.