Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Apprendre Méthode sort() | Opérations Avancées sur les Tableaux
Structures de Données JavaScript
course content

Contenu du cours

Structures de Données JavaScript

Structures de Données JavaScript

1. Introduction et Prérequis
2. Fondamentaux des Objets
3. Manipulation Avancée des Objets
4. Maîtriser les Tableaux
5. Opérations Avancées sur les Tableaux

book
Méthode sort()

Ce chapitre explore les subtilités de la méthode sort(), y compris sa syntaxe, ses comportements par défaut et ses techniques de tri personnalisées.

sort()

La méthode sort() modifie le tableau original, lui conférant un nouvel agencement.

Caractéristiques clés à retenir :

  • Le tableau original se transforme, trouvant ses éléments dans un nouvel agencement ;
  • La méthode fournit un tableau modifié comme valeur de retour, permettant une exploration plus approfondie ;
  • Par défaut, la méthode sort() arrange les éléments par ordre croissant.

Comportement de Tri par Défaut

Le tri par défaut se déroule sans accroc pour les tableaux de chaînes de caractères, mais les tableaux numériques peuvent présenter des défis. Naviguons à travers des exemples pour éclairer ce comportement :

123
const numbers = [51, 12, 43, 24, 65, 36]; numbers.sort(); console.log(numbers); // Output: 12, 24, 36, 43, 51, 65
copy

Dans cet exemple, le tableau de nombres est trié par ordre croissant, apparemment simple. Cependant, des nuances émergent dans l'illustration suivante :

123
const numbers = [34, 25, 19, 1, 92, 2, 3]; numbers.sort(); console.log(numbers); // Output: 1, 19, 2, 25, 3, 34, 92
copy

La méthode sort() traite les éléments comme des chaînes par défaut, ce qui peut entraîner des résultats inattendus. Par exemple, 19 est trié avant 2, et 25 avant 3. La solution réside dans la personnalisation du processus de tri.

Ordres de Tri Personnalisés

Pour adapter le tri à des besoins spécifiques, une fonction de rappel est utilisée. Cette fonction, souvent appelée fonction de comparaison, dicte la logique de tri. Explorons le tri personnalisé pour les nombres et les chaînes. Syntaxe de base :

  • a est considéré comme le premier élément ;
  • b est considéré comme le deuxième élément.

Trier les Nombres

Dans cet exemple, la fonction de comparaison détermine l'ordre croissant et décroissant basé sur la relation entre les éléments a et b.

1234567
const numbers = [34, 25, 19, 1, 92, 2, 3]; const ascendingNumbers = [...numbers].sort((a, b) => a - b); console.log(ascendingNumbers); // Output: 1, 2, 3, 19, 25, 34, 92 const descendingNumbers = [...numbers].sort((a, b) => b - a); console.log(descendingNumbers); // Output: 92, 34, 25, 19, 3, 2, 1
copy

Trier les chaînes

La méthode localeCompare() facilite le tri alphabétique, permettant une personnalisation pour les ordres croissant et décroissant.

1234567
const employees = ["Antonia", "Rene", "Casey", "Lorraine", "Shelia"]; const inAlphabetOrder = [...employees].sort((a, b) => a.localeCompare(b)); console.log(inAlphabetOrder); // Antonia, Casey, Lorraine, Rene, Shelia const inReversedOrder = [...employees].sort((a, b) => b.localeCompare(a)); console.log(inReversedOrder); // Shelia, Rene, Lorraine, Casey, Antonia
copy

1. Quelle est une caractéristique clé de la méthode sort() ?

2. Dans le comportement de tri par défaut de la méthode sort(), comment traite-t-elle les éléments ?

3. Dans l'exemple ci-dessous, quel sera le résultat ?

Quelle est une caractéristique clé de la méthode `sort()` ?

Quelle est une caractéristique clé de la méthode sort() ?

Sélectionnez la réponse correcte

Dans le comportement de tri par défaut de la méthode `sort()`, comment traite-t-elle les éléments ?

Dans le comportement de tri par défaut de la méthode sort(), comment traite-t-elle les éléments ?

Sélectionnez la réponse correcte

Dans l'exemple ci-dessous, quel sera le résultat ?

Dans l'exemple ci-dessous, quel sera le résultat ?

Sélectionnez la réponse correcte

Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 5. Chapitre 7
We're sorry to hear that something went wrong. What happened?
some-alt