У меня есть несортированный массив объектов, обладающий двумя свойствами: type
и date
.Мне нужно отсортировать этот массив:
- По дате и
- По типу (для каждого года
deposit
должен идти первым до withdrawal
)
Вот пример ввода:
let i = [
{
date:'2017',
type:'withdrawal',
amount:-5
},
{
date:'2016',
type:'deposit',
amount:12
},
{
date:'2018',
type:'deposit',
amount:54
},
{
date:'2017',
type:'deposit',
amount:20
},
{
date:'2016',
type:'withdrawal',
amount:55
},
{
date:'2018',
type:'withdrawal',
amount:54
}
]
Цель - вывести что-то вроде этого:
let o = [
{
date:'2016',
type:'deposit',
amount:12
},
{
date:'2016',
type:'withdrawal',
amount:55
},
{
date:'2017',
type:'deposit',
amount:20
},
{
date:'2017',
type:'withdrawal',
amount:-5
},
{
date:'2018',
type:'deposit',
amount:54
},
{
date:'2018',
type:'withdrawal',
amount:54
}
]
Пока мне удалось отсортировать массив по дате, используя:
o = i.sort((a,b)=>(a.date - b.date))
Но я не могу найти способ отсортировать его по типу