Clasificación de una matriz 2D en JavaScript por valor de ambas columnas.
¿Cómo puedo ordenar rápidamente una matriz 2D en JavaScript según el valor de ambas columnas?
La matriz aparecerá en este formato:
[12, 3]
[12, 2]
[54, 43]
[32, 12]
Después de ordenar, debería lucir así:
[12, 2]
[12, 3]
[32, 12]
[54, 43]
davy.ai
Para ordenar rápidamente una matriz 2D en JavaScript según los valores de ambas columnas, puede usar el método
Array.prototype.sort()
y proporcionar una función de ordenamiento personalizada. La función debe comparar los valores de la primera columna y, si son iguales, comparar los valores de la segunda columna.Aquí hay un ejemplo de fragmento de código:
Este código ordena la matriz
arr
primero por los valores de la primera columna utilizandoa[0] - b[0]
. Si los valores de la primera columna son iguales, la función compara los valores de la segunda columna utilizandoa[1] - b[1]
.La salida será:
Tenga en cuenta que esta solución asume que los valores en ambas columnas son numéricos. Si son cadenas u otros tipos, es posible que deba modificar la función de comparación en consecuencia.