2016-10-25 2 views
1

У меня есть следующий JavaScript Object:Underscore.js - Как SortBy вложенного массива объектов

var appointments = []; 

appointments.push(
     { id: '101', 
     status: 'accepted', 
     appointmentTimes: [ { from: '2016-10-28 12:00', to: '2016-10-28 13:00' } ] }, 

     { id: '102', 
     status: 'pending', 
     appointmentTimes: [ { from: '2016-10-24 12:00', to: '2016-10-24 13:00' }, 
          { from: '2016-10-24 15:00', to: '2016-10-24 16:00' } ] }); 

Я хочу, чтобы отсортировать массив объекты, используя первый элемент в массиве appointmentTimes используя from свойство, так что каждый объект появляется в порядке возрастания даты.

Итак, в приведенном выше примере объект с идентификатором 102 появится первым в списке. Обратите внимание, что каждый элемент в массиве destinationTimes уже находится в порядке возрастания.

Я попытался следующий, но он не работает:

_.sortBy(appointments, function(appointments) { 
     return appointments.appointmentTimes.from; 
}); 
+1

использование возвратных appointments.appointmentTimes [0] .from; – Vanojx1

+0

@ Vanojx1 Спасибо, мне удалось выяснить себя, но спасибо в любом случае. – adam78

ответ

0

удалось исправить:

_.sortBy(appointments, function(appointment) { 
    return appointment.appointmentTimes[0].from; 
}); 
Смежные вопросы