Skip to content
the poor coder

trier un tableau en foinction de la première lettre des villes js

Poor Man
Published
Reading time
2 min read
On this page

Trier un tableau en fonction de la première lettre des villes en JS#

Il est souvent nécessaire de trier les données d'un tableau en fonction de certains critères. Dans ce cas-ci, nous allons trier un tableau de villes en fonction de la première lettre de chaque ville à l'aide de JavaScript.

Exemple de tableau de villes#

Text

const villes = ['Montréal', 'Toronto', 'Ottawa', 'Vancouver', 'Québec', 'Calgary'];

Avant de trier le tableau, nous allons créer une fonction qui va retourner la première lettre de chaque ville.

Text

function getFirstLetter(ville) {
  return ville[0];
}

Maintenant que nous avons notre fonction, nous allons trier le tableau. Nous pouvons utiliser la méthode sort de JavaScript.

Méthode 1: Utilisation de la méthode sort()#

Text

const villesTrie = villes.sort(function(a, b) {
  return getFirstLetter(a) > getFirstLetter(b) ? 1 : -1;
});
console.log(villesTrie);

Cette méthode utilise une fonction anonyme à l'intérieur de sort() pour comparer les premières lettres de chaque ville. Si la première lettre d'une ville est supérieure à celle d'une autre ville, elle sera déplacée vers le haut du tableau. Sinon, elle sera déplacée vers le bas du tableau.

Méthode 2: Utilisation de la méthode localeCompare()#

Une autre méthode possible est d'utiliser la méthode localeCompare() de JavaScript.

Text

const villesTrie = villes.sort(function(a, b) {
  return a.localeCompare(b);
});
console.log(villesTrie);

Cette méthode utilise la fonction localeCompare() pour comparer les première lettres des villes. Elle compare les caractères Unicode des deux chaînes, et renvoie un nombre négatif si la chaîne "a" est avant la chaîne "b", 0 si les deux chaînes sont identiques, ou un nombre positif si la chaîne "a" est après la chaîne "b".

Dans notre exemple, si la première lettre d'une ville est avant la première lettre d'une autre ville dans l'alphabet, la ville sera déplacée vers le haut du tableau. Sinon, elle sera déplacée vers le bas du tableau.

Méthode 3: Utilisation de la méthode map() et sort()#

Une dernière méthode possible est de combiner les méthodes map() et sort().

Text

const villesTrie = villes.map(function(ville) {
  return {v: ville, c: getFirstLetter(ville)};
}).sort(function(a, b) {
  return a.c > b.c ? 1 : -1;
}).map(function(ville) {
  return ville.v;
});
console.log(villesTrie);

Cette méthode utilise la méthode map() pour créer un tableau d'objets contenant à la fois la ville et sa première lettre. Ensuite, elle utilise la méthode sort() pour trier les villes en fonction de leur première lettre. Finalement, elle utilise la méthode map() pour retourner un tableau contenant seulement les villes triées.

En résumé, ces trois méthodes permettent de trier un tableau de villes en fonction de la première lettre de chaque ville en utilisant JavaScript. Selon la taille du tableau et les performances requises, il est possible que certaines méthodes soient plus rapides que d'autres.

Keep going

2023

how to sort an array

How to Sort an Array If you have an array and you want to order its elements in a specific way, you need to use a sorting algorithm. There are several sorting algorithms available, but two of the most commonly used are…

javascript2 min read
2023

jquery mobile or desktop

jQuery Mobile or Desktop? As a web developer, I have had some experience with both jQuery Mobile and jQuery Desktop. Both frameworks have their pros and cons, and which one to use really depends on the specific project…

javascript1 min read
2023

node.js folder structure

Node.js Folder Structure If you are new to Node.js, it can be daunting to create a folder structure that will work for your project. The structure you choose will depend on the size and complexity of your project. Here…

javascript1 min read
ESC