Как я могу отсортировать массив объектов на основе двух свойств объектов?Jquery

Программирование на jquery
Ответить
Anonymous
 Как я могу отсортировать массив объектов на основе двух свойств объектов?

Сообщение Anonymous »

У меня есть следующий массив объектов:

Код: Выделить всё

eventJsonArr[0] = { eventName: "Event One", eventYear "2012"}
eventJsonArr[1] = { eventName: "Event Two", eventYear "2011"}
eventJsonArr[2] = { eventName: "Event Three", eventYear "2012"}
eventJsonArr[3] = { eventName: "Event Four", eventYear "2013"}
eventJsonArr[4] = { eventName: "Event Five", eventYear "2010"}
eventJsonArr[5] = { eventName: "Event Six", eventYear "2011"}
Как отсортировать этот массив по свойствам каждого объекта? Короче говоря: все, что мне нужно, это иметь возможность сортировать массив объектов сначала по eventYear в порядке убывания, а затем по eventName в порядке возрастания.
Думаю, мне нужно, чтобы он точно имитировал то, что делал бы SQL, если бы eventName и eventYear были столбцами, каждый индекс массива был строками и содержал ORDER BY eventYear DESC, eventName ASC.
Мне нужно использовать это с «предварительным просмотром страницы», поэтому оно должно вести себя точно так же, как настроенная мной страница, которая запрашивает реальную базу данных (как описано выше).
Дополнительная информация:
На самом деле я .push()перебираю значения по одному в jQuery .each() цикл, поэтому, если что-то нужно сделать, я фактически добавляю значения в массив, а не на самом деле сортируя массив полных значений, это можно сделать (хотя я не уверен, какая там логика нужна).
Вот что я пробовал, прежде чем опубликовать этот вопрос:

Код: Выделить всё

eventJsonArr.sort() //As a start, just to see what it did.
И затем:

Код: Выделить всё

evenJsonArr.sort(function(a, b) { //I got the basic function to sort, which it did.
a.eventYear - b.eventYear
});
Помимо этой функции я действительно не смог найти ничего, что имело бы отношение к моей ситуации. По крайней мере, я не нашел.
Вот несколько страниц, которые я исследовал:
  • http://www. javascriptkit.com/javatutors/arraysort2.shtml
  • https://gist.github.com/onpubcom/1772996
  • Как отсортировать массив объектов по дате собственности?
  • Сортировка массива объектов по значению строкового свойства
  • (И даже W3Schools)


Подробнее здесь: https://stackoverflow.com/questions/197 ... properties
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Jquery»