Función de clasificación personalizada de JavaScript()

Migel Hewage Nimesha 15 febrero 2024
  1. el método sort() en JavaScript
  2. Use el método personalizado sort() para ordenar la matriz de números en JavaScript
Función de clasificación personalizada de JavaScript()

En este artículo, analizaremos la operación de ordenación en matrices de JavaScript.

el método sort() en JavaScript

El método sort() se utiliza para ordenar los elementos de un arreglo. De forma predeterminada, este método ordena los elementos en orden ascendente.

Por lo general, este método modifica la matriz original cambiando las posiciones de los elementos. Además, el método sort() convierte los elementos de la matriz de entrada en cadenas y luego realiza una comparación de cadenas para ordenar los elementos.

Si ingresa una matriz de números, esos números se convertirán primero a su valor de cadena y luego se compararán. Vamos a crear una matriz de números y usar el método sort() para ordenarlos.

Ejemplo de código:

let numericArray = [100, 3, 66, 23, 200, 500];
numericArray.sort();
console.log(numericArray);

Producción:

Ordenar matriz de números

Esto no está ordenado como se esperaba. Tenemos que personalizar el método sort() para arreglar esto.

Nos permite pasar una función de comparación personalizada como argumento. Esta función de comparación acepta dos argumentos y las reglas aplicadas a los argumentos pasados determinarán el orden de clasificación.

Use el método personalizado sort() para ordenar la matriz de números en JavaScript

Para ordenar una matriz de números, debemos implementar una función de comparación como se muestra a continuación.

si los valores devueltos por la función comparar(a, b) son menores que 0, el método ordenar() colocará a antes de b.

En caso contrario, se colocará b antes de a. Siempre que la función compare(a, b) devuelva 0, las posiciones de a y b no cambiarán.

Por lo tanto, la función de comparación personalizada se puede pasar al método sort(), como se muestra a continuación.

Ejemplo de código:

let numericArray = [100, 3, 66, 23, 200, 500];
numericArray.sort(function(a, b) {
  if (a > b) return 1;
  if (a < b) return -1;
  return 0;
});
console.log(numericArray);

Producción:

Use el método de clasificación personalizada () para ordenar la matriz de números

Como era de esperar, la matriz se ha ordenado correctamente ahora. Esta es una característica muy útil del método sort() de JavaScript que permite a los usuarios decidir el orden.

Migel Hewage Nimesha avatar Migel Hewage Nimesha avatar

Nimesha is a Full-stack Software Engineer for more than five years, he loves technology, as technology has the power to solve our many problems within just a minute. He have been contributing to various projects over the last 5+ years and working with almost all the so-called 03 tiers(DB, M-Tier, and Client). Recently, he has started working with DevOps technologies such as Azure administration, Kubernetes, Terraform automation, and Bash scripting as well.

Artículo relacionado - JavaScript Sort