JavaScript: многомерный массив сортировать по указанному индексу? - PullRequest
1 голос
/ 08 декабря 2010

Если у меня есть массив, который выглядит следующим образом:

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

Как бы отсортировать этот массив по одному из значений массива 1-го измерения?Спасибо заранее!

1 Ответ

2 голосов
/ 08 декабря 2010

С помощью простого обратного вызова сортировки

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 );

метод Array.sort() принимает обратный вызов, в который передаются два элемента.Это базовая сортировка пузырьков

  • Если a нужно отсортировать раньше b, вернуть -1 (или любое отрицательное значение)
  • Если b должно бытьотсортировано до a, возвращает 1 (или любое положительное значение)
  • Если a и b равны, возвращает 0;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...