JavaScript Array sort()

Définition et utilisation

sort() La méthode trie les éléments du tableau.

L'ordre de tri peut être alphabétique ou numérique, ou croissant (vers le haut) ou décroissant (vers le bas).

Par défaut,sort() La méthode trie les valeurs en tant que chaînes de caractères par ordre alphabétique et croissant.

Cela s'applique aux chaînes de caractères ("Apple" apparaît avant "Banana"). Mais, si les nombres sont triés comme des chaînes de caractères, "25" est plus grand que "100" car "2" est plus grand que "1".

C'est pourquoi,sort() La méthode peut produire des résultats incorrects lors du tri des nombres.

Vous pouvez résoudre ce problème en fournissant une 'fonction de comparaison' (voir les 'valeurs de paramètres' ci-dessous).

Remarque :sort() La méthode modifie l'array original.

Exemple

Exemple 1

Trier un tableau :

var fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.sort();

Essayez-le vous-même

Exemple 2

Trier les nombres dans le tableau par ordre croissant :

var points = [40, 100, 1, 5, 25, 10];
points.sort(function(a, b){return a-b});

Essayez-le vous-même

Exemple 3

Trier les nombres dans le tableau par ordre décroissant :

var points = [40, 100, 1, 5, 25, 10];
points.sort(function(a, b){return b-a});

Essayez-le vous-même

Exemple 4

Obtenir la valeur minimale de l'array :

var points = [40, 100, 1, 5, 25, 10];
points.sort(function(a, b){return a-b});    // Trier les nombres de l'array par ordre croissant
// Le premier élément de l'array (points[0]) est maintenant la valeur la plus basse

Essayez-le vous-même

Exemple 5

Obtenir la valeur maximale de l'array :

var points = [40, 100, 1, 5, 25, 10];
points.sort(function(a, b){return b-a});    // Trier les nombres de l'array par ordre décroissant
// Le premier élément de l'array (points[0]) est maintenant la valeur la plus élevée

Essayez-le vous-même

Exemple 6

Obtenir la valeur maximale de l'array :

const points = [40, 100, 1, 5, 25, 10];
// Trier les nombres par ordre croissant :
points.sort(function(a, b){return a-b});
// points[points.length-1] = 100(最高值)

Essayez-le vous-même

Exemple 7

Triez l'array par ordre alphabétique puis renversez l'ordre des éléments triés (ordre décroissant) :

var fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.sort();
fruits.reverse();

Essayez-le vous-même

Syntaxe

array.sort(compareFunction)

Valeur du paramètre

Paramètres Description
compareFunction

Optionnel. Définir une fonction alternative pour l'ordre de tri. Cette fonction doit retourner une valeur négative, zéro ou positive, en fonction des paramètres, par exemple :

  • function(a, b){return a-b}

Lorsque la méthode sort() compare deux valeurs, elle envoie les valeurs à la fonction de comparaison et trie les valeurs en fonction du retour (négatif, zéro, positif).

Exemple :

Lors de la comparaison de 40 et 100, la méthode sort() appelle la fonction de comparaison (40,100).

Cette fonction calcule 40-100 et retourne -60 (valeur négative).

La fonction sort() mettra 40 en valeur inférieure à 100.

Détails techniques

Valeur de retour : Objet Tableau, dont les éléments sont triés.
Version JavaScript : ECMAScript 1

Support du navigateur

Tous les navigateurs le supportent pleinement sort() Méthode :

Chrome IE Edge Firefox Safari Opera
Chrome IE Edge Firefox Safari Opera
Support Support Support Support Support Support

Pages associées

Tutoriel :JavaScript Tableau

Tutoriel :Const des tableaux JavaScript

Tutoriel :Méthodes des tableaux JavaScript

Tutoriel :Tri des tableaux JavaScript

Tutoriel :Itération des tableaux JavaScript

Manuel :Méthode reverse() de l'Array JavaScript