0

tengo el siguiente ejemplo un arreglo con otros arreglos dentro el metodo sort funciona muy bien cuando es un simple arreglo con los json , pero en este caso que estaría faltando?

const input = [
    [{id: 1, keyOne: "valueOne", keyTwo: "valueTwo"}],
    [{id: 2, keyOne: "valueOne", keyTwo: "valueTwo"}],
    [{id: 3, keyOne: "valueOne", keyTwo: "valueTwo"}],
    [{id: 4, keyOne: "valueOne", keyTwo: "valueTwo"}]
];

let sortedInput = input.slice().sort((a, b) => b.id - a.id);
console.log(sortedInput);
Eder Esparza
  • 101
  • 8
  • No se que es lo que pretendes hacer y a lo mejor lo necesitas así, pero sobran los `[]` de cada array. `{id: 1, keyOne: "valueOne", keyTwo: "valueTwo"}`. Al quitarlos, ordena de forma descendente, como lo tienes programado. – Juan José Jul 09 '20 at 14:56
  • así es también lo note, solo que así es como logre obtener unos valores que recibo en respuesta ajax con un cilco for , seguire revisando para ver si los puedo obtener simple, de antemano gracias. – Eder Esparza Jul 09 '20 at 14:59
  • 1
    Resulta que los elementos de `input` son de tipo `array`, lo que te falta especificar en tu función de ordenamiento (`sort`), es el índice del elemento sobre el cual vas a realizar el ordenamiento. En el ejemplo que pones en tu pregunta el índice sería `0`. Por ejemplo: `sort((a, b) => b[0].id - a[0].id);`. – Mauricio Contreras Jul 09 '20 at 15:04
  • [JSON `!==` Objeto Javascript](https://es.stackoverflow.com/questions/164943/cu%c3%a1l-es-la-diferencia-entre-json-y-un-objeto-en-javascript) – Pablo Lozano Jul 09 '20 at 15:17

0 Answers0