0
votes

Trier le tableau 2D par premier élément en JavaScript

J'ai un tableau 2D comme: xxx

Je souhaite trier les premières valeurs d'index - [2,6] devrait venir avant [12,6], [16,6], [16,6 ] ... [4,4] avant [7,4] dans cet ordre ... d'obtenir: xxx


4 commentaires

C'est probablement un duplicata, mais vous pouvez le faire comme ça .. myarray.sort ((a, b) => b [0] - A [0])


@ Halilçakar qui ne fonctionne pas.


Si nous le trions en première valeur comme vous l'avez mentionné, votre sortie attendue est fausse alors.


@ Halilçakar a [0] - b [0] plutôt


3 Réponses :


0
votes

Vous pouvez trier par le premier élément comme celui-ci.

p>

const myArray = [ [20,6], [12,6], [17,6], [2,6], [11,5], [18,5], [7,4], [4,4] ];

let ans = myArray.sort( (a, b) => {
  return a[0] - b[0]
})

console.log(ans)


0 commentaires

2
votes

Vous devez respecter le tri du deuxième élément de chaque tableau:

  1. Trier par index 1 code> descendant, li>
  2. Trier par index 0 code> ascendance. li> ol>

    p>

    const array = [[20, 6], [12, 6], [17, 6], [2, 6], [11, 5], [18, 5], [7, 4], [4, 4]];
    
    array.sort((a, b) => b[1] - a[1] || a[0] - b[0]);
    
    console.log(JSON.stringify(array));


0 commentaires

1
votes

Vous pouvez définir un tri avec une fonction de comparaison. xxx

voici la référence pour la fonction de tri - Trier ()


0 commentaires