JS : Trier un tableau + encodage

Après avoir trier un tableau en Javascript, j'ai constaté que les éléments commençant par des caractères spéciaux (les accents français, par exemple) était mal trié, ces derniers se trouvant en dernière position alors qu'il commençait par "Î".

En effet, en utilisant simplement la fonction "sort" de Javascript, on obtient le résultat suivant :

var arr = ["Yonne", "Alsace", "Île de France"];
arr = arr.sort();

// Résultat : ["Alsace", "Yonne", "Île de France"]

Pour parer à cela, JS nous offre une fonction bien utile, "localeCompare"

Exemple d'utilisation :

var arr = ["Yonne", "Alsace", "Île de France"];

// Déclaration de la fonction de tri
function frsort(a,b) {
  return a.localeCompare(b);
}

// Utilisation
arr = arr.getUnique().sort(frsort);

// Résultat : ["Alsace", "Île de France", "Yonne"]

 


22 septembre 2015 - Wakonda - JavaScript

Rechercher

Tags

Publicité

Suivez-nous

Aidez-nous !


Loading…
Loading the web debug toolbar…
Attempt #