Показать сообщение отдельно
  #7 (permalink)  
Старый 06.02.2013, 14:58
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 27,113

dima***,
Снова да ладом ...
<!DOCTYPE HTML>

<html>

<head>
  <title></title>
  <meta charset="utf-8" />
</head>

<body>
<script  type="text/javascript">
var arr=[
 [53,"2015-03-18 09:53:33","Super User"],
 [63,"2015-03-21 17:30:00","Super User"],
 [53,"2015-03-18 09:53:33","Super User"],
 [62,"2015-03-21 10:52:41","test"],
 [56,"2015-03-18 15:57:33","Super User"],
 [61,"2015-03-19 18:53:16","Super User"],
 [51,"2015-03-18 09:16:00","Super User"],
 [60,"2015-03-19 18:53:04","Super User"],
 [57,"2015-03-18 16:00:40","Super User"],
 [58,"2015-03-18 16:01:46","Super User"],
 [59,"2015-03-18 16:48:52","Super User"]

 ];

//функция для вывода результата для теста
function show( arr, str)
{ str = str || '';
  var html = str + "<br />";
  for (var i=0; i<arr.length; i++)  {
  html+=arr[i].join()+"<br />"
  }
  return html+"<br />"
}
//без сортировки
document.write(show(arr,'без сортировки'))

//функция для сортировки
function s(a, b) {
    return function(c, d) {
        return c[a] < d[a] ? b ? 1 : -1 : c[a] > d[a] ? b ? -1 : 1 : 0
    }
};
//сортируем по первому полю 0
arr.sort(s(0))
document.write(show(arr,'по первому полю'))
//сортируем по первому полю 0 убывание
arr.sort(s(0, true))
document.write(show(arr,'по первому полю убывание'))

//сортируем по второму полю 1
arr.sort(s(1))
document.write(show(arr, 'по второму полю'))
//сортируем по второму полю 1 убывание
arr.sort(s(1, true))
document.write(show(arr, 'по второму полю убывание'))

//сортируем по третьему полю 2
arr.sort(s(2))
document.write(show(arr, 'третьему полю'))
//сортируем по третьему полю 2
arr.sort(s(2,true))
document.write(show(arr, 'третьему полю убывание'))
</script>
</body>
</html>

Последний раз редактировалось рони, 22.03.2015 в 01:54. Причина: замена массива
Ответить с цитированием