Tri de tableau asc / desc

Contenu du snippet

Sur un principe trouvé sur un code de Skyride, voici une fonction
permettant de trier un tableau de variables de facon ascendante
ou descendante.

Source / Exemple :


<HTML>
<HEAD>
<SCRIPT>
var Tab1 = new Array(10,19,8,7,6,-9,15,4,13,12,0,1,02,-1)
function SortArray(Originals,Order){
	var Numbers = new Array()   //	Tableau utilisé pour la conparaison
	var Test = (Order > 0) ? "Numbers[b] > Numbers[a]" : "Numbers[b] < Numbers[a]" // Choix de la comparaison
	for (i = 0; i < Originals.length; i++){Numbers[i] = Originals[i]}  //	Copie du tableau original
	for (a = 0; a < Numbers.length; a++)              //	Liste de tous les éléments du tableau
	{
	       for (b = 0; b < Numbers.length ;b++)      //	Re-liste tous les éléments pour les comparer à Numbers[a]
	       {
		    	if (eval(Test)) {Copy = Numbers[b]; Numbers[b] = Numbers[a]; Numbers[a] = Copy} //    Déplacement de la valeur
	       }
	}
	return(Numbers) //	Retourne le tableu trié
}
//	Code de teste :
var Tab2 = SortArray(Tab1,1)
var Tab3 = SortArray(Tab1,-1)
var str = "<TABLE CELLPADDING=0 CELLSPACING=0 BORDER=0 STYLE='font: 12 Arial; text-align: center'><TR><TD>Index</TD><TD>&nbsp;Original</TD><TD>&nbsp;Ascendant</TD><TD>&nbsp;Descendant</TD><TR>"
for (i = 0; i < Tab2.length; i++)
	{str += "<TR><TD>"+i+"</TD><TD>"+Tab1[i] + "</TD><TD>" + Tab2[i]+"</TD><TD>" + Tab3[i]+"</TD><TR>"}
str += "</TABLE>"
document.write(str)
</SCRIPT>
</HEAD>
<BODY>
</BODY>
</HTML>

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.