Cómo el método Sort() de Javascript utiliza una función de devolución de llamada para la clasificación numérica
En Javascript, el método sort() permite ordenar matrices de forma personalizada. Comprender las complejidades de este método puede ser un desafío, especialmente para los principiantes.
Cómo el método Sort() utiliza una función de devolución de llamada
El método sort() acepta una devolución de llamada funcionar como argumento. Esta función se invoca varias veces durante el proceso de clasificación, y se le pasan dos números cada vez. Estos números representan los elementos actuales que se están comparando. El valor de retorno de la función determina cómo se ordenan estos elementos en la matriz ordenada final.
Ejemplo:
Considere el siguiente código:
var array=[25, 8, 7, 41] array.sort(function(a,b){ return a - b })
En este ejemplo, el método sort() se utiliza para organizar la matriz en orden numérico ascendente. La función de devolución de llamada se define de la siguiente manera:
function(a,b){ return a - b }
Esta función de devolución de llamada toma dos parámetros, a y b, que representan los dos elementos que se comparan. Calcula su diferencia (a - b).
Criterios de clasificación
El resultado del cálculo de la función de devolución de llamada determina el orden de clasificación. Si el resultado es:
Proceso de clasificación
El método sort() itera a través de la matriz, invocando la función de devolución de llamada para cada par de elementos. Según la salida de la función, ajusta el orden de los elementos hasta que se ordena toda la matriz.
Registro de invocaciones de devolución de llamada (Ejemplo)
Si modificamos la devolución de llamada funciona de la siguiente manera:
function(a,b){ console.log(`comparing ${a},${b}`); return a > b ? 1 : a === b ? 0 : -1; }
Obtendríamos el siguiente registro de invocaciones de devolución de llamada:
comparing 25,8 comparing 25,7 comparing 8,7 comparing 25,41
Esto demuestra que la función de devolución de llamada se invoca varias veces, y los pares de elementos cambian con cada iteración.
En resumen, el método sort() de Javascript utiliza una función de devolución de llamada para determinar el orden de clasificación de los elementos de una matriz comparándolos en pares. Esta función de devolución de llamada se invoca varias veces durante el proceso de clasificación y su salida determina la matriz ordenada final.
Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.
Copyright© 2022 湘ICP备2022001581号-3