Estoy tratando de ordenar una matriz, donde sus objetos consisten en una clave dinámica de número de tipo.
Ahora quiero ordenar los objetos para que los números comiencen primero desde el más pequeño; el número al que me refiero es la clave del objeto.
Aquí está mi código
const arr = [{"3": 32}, {"1": 42}, {"5": 48}]; arr.sort((a,b) => { if (a < b) { return -1; } if (a > b) { return 1; } return 0; }); console.log(arr);El orden de los objetos debe ser:
[{"1": 42},{"3":32},{"5":48}]Deberá extraer las claves... como con Object.keys :
const arr = [{"3": 32}, {"1": 42}, {"5": 48}]; arr.sort((a,b) => Object.keys(a)[0] - Object.keys(b)[0]); console.log(arr);usa esto y debería funcionar
let arr = [{"3": 32}, {"1": 42}, {"5": 48}]; let getKey=(array)=> Object.keys(array)[0] arr.sort((a,b) => (getKey(a) - getKey(b))) console.log(arr)Esto debería funcionar
const arr = [{"3": 32}, {"1": 42}, {"5": 48}]; arr.sort((a,b) => { const firstKey = Object.keys(a)[0] const secondKey = Object.keys(b)[0] return secondKey - firstKey })