[ Web Proxy ]
URL:
Viewing: https://developer.mozilla.org/fr/docs/Web/JavaScript/Reference/Global_Objects/Array/toSorted [Back]  [Original]

Array : mthode toSorted() - JavaScript | MDN

Cette page a t traduite partir de l'anglais par la communaut. Vous pouvez contribuer en rejoignant la communaut francophone sur MDN Web Docs.

View in English Always switch to English

Array : mthode toSorted()

Baseline Large disponibilit

Cette fonctionnalit est bien tablie et fonctionne sur de nombreux appareils et versions de navigateurs. Elle est disponible sur tous les navigateurs depuis juillet 2023.

La mthode toSorted() des instances de Array est la version copiante de la mthode sort(). Elle retourne un nouveau tableau dont les lments sont tris par ordre croissant.

Dans cet article

Syntaxe

js
toSorted()
toSorted(compareFn)

Paramtres

compareFn Facultatif

Une fonction qui dfinit l'ordre des lments. Si elle est omise, les lments du tableau sont convertis en chanes de caractres, puis tris selon la valeur du point de code Unicode de chaque caractre. Voir sort() pour plus d'informations.

Valeur de retour

Un nouveau tableau dont les lments sont tris par ordre croissant.

Description

Voir sort() pour plus d'informations sur le paramtre compareFn.

Lorsqu'elle est utilise sur un tableau creux, la mthode toSorted() parcourt les cases vides comme si elles avaient la valeur undefined.

La mthode toSorted() est gnrique. Elle attend seulement que la valeur de this possde une proprit length et des proprits cls entires.

Exemples

Trier un tableau

js
const months = ["Mar", "Jan", "Feb", "Dec"];
const sortedMonths = months.toSorted();
console.log(sortedMonths); // ['Dec', 'Feb', 'Jan', 'Mar']
console.log(months); // ['Mar', 'Jan', 'Feb', 'Dec']

const values = [1, 10, 21, 2];
const sortedValues = values.toSorted((a, b) => a - b);
console.log(sortedValues); // [1, 2, 10, 21]
console.log(values); // [1, 10, 21, 2]

Pour plus d'exemples d'utilisation, voir sort().

Utiliser toSorted() sur un tableau creux

Les cases vides sont tries comme si elles avaient la valeur undefined. Elles sont toujours places la fin du tableau et compareFn n'est pas appel pour elles.

js
console.log(["a", "c", , "b"].toSorted()); // ['a', 'b', 'c', undefined]
console.log([, undefined, "a", "b"].toSorted()); // ["a", "b", undefined, undefined]

Appeler toSorted() sur un objet qui n'est pas un tableau

La mthode toSorted() lit la proprit length de this. Elle collecte ensuite toutes les proprits cl entire existantes dans l'intervalle de 0 length - 1, les trie, puis les crit dans un nouveau tableau.

js
const objetSimilaireTableau = {
  length: 3,
  unrelated: "foo",
  0: 5,
  2: 4,
  3: 3, // ignor par toSorted() car length vaut 3
};
console.log(Array.prototype.toSorted.call(objetSimilaireTableau));
// [4, 5, undefined]

Spcifications

Spcification
ECMAScript 2027 LanguageSpecification
# sec-array.prototype.tosorted

Compatibilit des navigateurs

Voir aussi


Web Proxy Viewer  |  New URL  |  Original Page