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

Array.prototype.toSorted() - JavaScript | MDN

Esta pgina ha sido traducida del ingls por la comunidad. Aprende ms y nete a la comunidad de MDN Web Docs.

View in English Always switch to English

Array.prototype.toSorted()

Baseline Widely available

This feature is well established and works across many devices and browser versions. Its been available across browsers since julio de 2023.

El mtodo toSorted() devuelve un nuevo array con sus elementos ordenados en orden ascendente sin alterar el array original. Forma parte del objeto Array y es la versin copying del mtodo sort().

In this article

Sintaxis

js
toSorted()
toSorted(compareFn)

Parmetros

compareFn

Opcional. Una funcin que determina el orden de los elementos. Si es omitida, los elementos del array son convetidos en string y ordenados por su valor Unicode. Ver sort() para ms informacin.

Valor devuelto

Un nuevo array con sus elementos ordenados de manera ascendente.

Descripcin

Ver sort() para ms informacin del parametro compareFn.

Cuando se usa en arrays dispersos, el mtodo toSorted() itera las posiciones vacas del array como si tuvieran el valor de undifined.

El mtodo toSorted() es genrico. Solo requiere que el valor de this tenga una propiedad length y propiedades indexadas por enteros.

Ejemplos

Ordenando un array

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]

Para ms ejemplos de uso, ver sort().

Usando toSorted() en arrays dispersos

Las posiciones vacas son ordenadas como si tuvieran el valor undefined. Siempre son ubicadas al final del array y no se invoca compareFn para ellas.

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

Llamar a toSorted() en objetos que no son arrays

El mtodo toSorted() lee la propiedad length de this. Luego recopila todas las propiedades existentes indexadas por enteros en el rango de 0 a length - 1, las ordena y las escribe en un nuevo array.

js
const arrayLike = {
  length: 3,
  unrelated: "foo",
  0: 5,
  2: 4,
  3: 3, // ignorado por toSorted() dado que length es 3
};
console.log(Array.prototype.toSorted.call(arrayLike));
// [4, 5, undefined]

Especificaciones

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

Compatibilidad con navegadores

Ver tambin


Web Proxy Viewer  |  New URL  |  Original Page