1

If I have an array that looks like the following:

var array[0] = [$name, $date, $bTrue]; ... ... ...

How would I sort that array by one of the 1st dimensional array values? Thanx in advance!

thepip3r
  • 2,855
  • 6
  • 32
  • 38
  • Does this answer your question? [How to sort 2 dimensional array by column value?](https://stackoverflow.com/questions/16096872/how-to-sort-2-dimensional-array-by-column-value) – miken32 Jul 25 '22 at 23:12
  • Peter answered my question 12 years ago. – thepip3r Aug 02 '22 at 20:44

1 Answers1

4

With a simple sort callback

var arr = [[1,5,2],[1,8,2],[1,2,2]];

console.log( arr );

arr.sort( function( a, b )
{
  // Sort by the 2nd value in each array
  if ( a[1] == b[1] ) return 0;
  return a[1] < b[1] ? -1 : 1;
});

console.log( arr );

the Array.sort() method takes a callback into which two elements are passed. It's a basic bubble sort

  • If a is to be sorted ahead of b, return -1 (or any negative value)
  • If b is to be sorted ahead of a, return 1 (or any positive value)
  • If a and b are equal, return 0;
Peter Bailey
  • 105,256
  • 31
  • 182
  • 206