English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Método sort() del array JavaScript

 Objeto de Array de JavaScript

sort()El método ordena los elementos del array (basado en el primer carácter) y devuelve el array.

Por defecto,sort()El método ordena los métodos en orden ascendente/Clasifica los valores en orden alfabético.

Esto se aplica a las cadenas ("December" antes que "February").

Pero, si los números se ordenan como cadenas, entonces “35”Mayor que “150”, porque “3”Mayor que “1”

Pero puedes cambiar el algoritmo de clasificación proporcionando una función 'compare'.

Nota: El método sort() cambia el array original.

Sintaxis:

array.sort(compareFunction)
var months = ['March', 'Jan', 'Feb', 'Dec'];
months.sort();
Prueba y observa‹/›

Compatibilidad del navegador

Los números en la tabla especifican la versión del navegador que admite completamente el método sort():

Método
sort()11EsEs5.5

Valor del parámetro

ParámetrosDescripción
compareFunction(Opcional)Especificar una función para definir el orden de clasificación. Si se omite, se ordenará el array en orden alfabético.

Detalles técnicos

Valor devuelto:Array ordenado
Versión de JavaScript:ECMAScript 1

Más ejemplos

Ordenar los números del array en orden ascendente:

var nums = [5, 1, 2, 7, 3, 6, 4];
nums.sort();
Prueba y observa‹/›

sort()Por defecto, no se ordenan los arrays de números por tamaño. En su lugar, solo se verifica el primer carácter de los números:

var nums = [5, 1, 2, 17, 13, 6, 34];
nums.sort();
Prueba y observa‹/›

Para ordenar correctamente los números, puede crear una función de comparación como parámetro:

var nums = [5, 1, 2, 17, 13, 6, 34];
nums.sort(function(a, b) {return a - b});
Prueba y observa‹/›

Ordenar los números del array en orden descendente:

var nums = [5, 1, 2, 17, 13, 6, 34];
nums.sort(function(a, b) {return b - a});
Prueba y observa‹/›

Obtener el valor más pequeño y más grande del array:

function myFunc() {
var nums = [5, 1, 2, 7, 3, 6, 4];
nums.sort(); // Ordenar el array
var low = nums[0];   // El valor de la primera posición es el más pequeño
var high = nums[nums.length-1];  // El valor de la última posición es el más grande
}
Prueba y observa‹/›

 Objeto de Array de JavaScript