Clasificación de matriz de JavaScript ()
Ejemplos
Ordenar matriz:
const fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.sort();
Ordenar y luego invertir el orden:
const fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.sort();
fruits.reverse();
Definición y uso
El sort()
ordena los elementos de una matriz.
El sort()
sobrescribe la matriz original.
El sort()
ordena los elementos como cadenas en orden alfabético y ascendente.
Ver también:
Ordenar función de comparación
Ordenar alfabéticamente funciona bien para cadenas ("Apple" viene antes de "Banana").
Pero, ordenar números puede producir resultados incorrectos.
"25" es mayor que "100", porque "2" es mayor que "1".
Puede solucionar esto proporcionando una "función de comparación" (consulte los ejemplos a continuación).
Sintaxis
array.sort(compareFunction)
Parámetros
Parameter | Description |
compareFunction |
Optional. A function that defines a sort order. The function should return a negative, zero, or positive value, depending on the arguments:
When sort() compares two values, it sends the values to the compare function, and sorts the values according to the returned (negative, zero, positive) value. Example: The sort function will sort 40 as a value lower than 100. When comparing 40 and 100, sort() calls the function(40,100). The function calculates 40-100, and returns -60 (a negative value). |
Valor devuelto
La matriz con los elementos ordenados. |
Más ejemplos
Ordenar números en orden ascendente:
const points = [40, 100, 1, 5, 25, 10];
points.sort(function(a, b){return a-b});
Ordenar los números en orden descendente:
const points = [40, 100, 1, 5, 25, 10];
points.sort(function(a, b){return b-a});
Encuentre el valor más bajo:
const points = [40, 100, 1, 5, 25, 10];
// Sort the numbers in ascending order
points.sort(function(a, b){return a-b});
let lowest = points[0];
Encuentre el valor más alto:
const points = [40, 100, 1, 5, 25, 10];
// Sort the numbers in descending order:
points.sort(function(a, b){return b-a});
let lowest = points[0];
Encuentre el valor más alto:
const points = [40, 100, 1, 5, 25, 10];
// Sort the numbers in ascending order:
points.sort(function(a, b){return a-b});
let highest = points[points.length-1];
Compatibilidad con navegador
sort()
es una característica de ECMAScript1 (ES1).
ES1 (JavaScript 1997) es totalmente compatible con todos los navegadores:
Chrome | IE | Edge | Firefox | Safari | Opera |
Yes | Yes | Yes | Yes | Yes | Yes |