Для следующей структуры array-object-thing :
Events : {
events : [
{
startDTG : {day: 0, month: 0, year: 0, time: "" },
endDTG : {day: 0, month: 0, year: 0, time: "" },
mode: ""
},
...
],
blah...,
blah...,
blah...
}
Я изо всех сил пытаюсь найти более эффективный способ сортировки events
объектов на основе startDTG
ключ (дата-время группа).В настоящее время я использую следующее, но я чувствую, что должен быть лучший способ сделать это!
SortEvents: function() {
this.Events.events.sort(function(a, b){return a.startDTG.time - b.startDTG.time});
this.Events.events.sort(function(a, b){return a.startDTG.day - b.startDTG.day});
this.Events.events.sort(function(a, b){return a.startDTG.month - b.startDTG.month});
this.Events.events.sort(function(a, b){return a.startDTG.year - b.startDTG.year});
},
Редактировать 1 : желание должно быть отсортировано по Year > Month > Day > Time
Я нахожусь в критической точке, в которой я должен отказаться от этого пользовательского DTG во имя эффективности, в которой он необходим.Я могу опубликовать весь код по запросу, но он может не иметь общего смысла, так как он написан на JS для работы в рамках проприетарной системы управления под названием «Medialon»
Edit 2 : добавленсделал JSON
дамп кода ниже, чтобы помочь с удобочитаемостью структуры.Не обращайте внимания на тот факт, что все они являются «строками», именно так Медиалон строгает для настойчивости
{
"events": [
{
"startDTG": {
"day": "8",
"month": "2",
"year": "2019",
"time": "06:35",
"dayName": "5"
},
"endDTG": {
"day": "9",
"month": "2",
"year": "2019",
"time": "08:35",
"dayName": "6"
},
"mode": "1"
},
{
"startDTG": {
"day": "27",
"month": "2",
"year": "2019",
"time": "17:35",
"dayName": "3"
},
"endDTG": {
"day": "28",
"month": "2",
"year": "2019",
"time": "06:35",
"dayName": "4"
},
"mode": "1"
},
{
"startDTG": {
"day": "1",
"month": "2",
"year": "2019",
"time": "14:35",
"dayName": "5"
},
"endDTG": {
"day": "2",
"month": "2",
"year": "2019",
"time": "12:35",
"dayName": "6"
},
"mode": "1"
}
],