Comment le code suivant permet-il de trier ce tableau par ordre numérique ?
var array=[25, 8, 7, 41]
array.sort(function(a,b){
return a - b
})
Je sais que si le résultat du calcul est...
Inférieur à 0 : "a" est trié pour être un indice inférieur à "b".
Zéro : "a" et "b" sont considérés comme égaux et aucun tri n'est effectué.
Supérieure à 0 : "b" est trié pour être un indice inférieur à "a".
La fonction de rappel du tri de tableaux est-elle appelée plusieurs fois au cours du tri ?
Si c'est le cas, j'aimerais savoir quels sont les deux nombres qui sont transmis à la fonction à chaque fois. J'ai supposé qu'elle prenait d'abord "25"(a) et "8"(b), puis "7"(a) et "41"(b), donc.. :
25(a) - 8(b) = 17 (supérieur à zéro, donc trier "b" pour qu'il soit un indice inférieur à "a") : 8, 25
7(a) - 41(b) = -34 (inférieur à zéro, donc trier "a" pour qu'il soit un indice inférieur à "b" : 7, 41
Comment les deux ensembles de nombres sont-ils ensuite triés l'un par rapport à l'autre ?
Aidez un débutant qui a du mal à s'y retrouver !