情况是:我有一个对象数组,其中每个对象都有一个对象数组。该数组如下所示:
[
{
"dislikes": [
{
"createDate": {
"date": 11,
"day": 0,
"hours": 18,
"minutes": 15,
"month": 10,
"seconds": 11,
"time": 1541956511001,
"timezoneOffset": -60,
"year": 118
},
},
{
"createDate": {
"date": 11,
"day": 0,
"hours": 18,
"minutes": 15,
"month": 10,
"seconds": 11,
"time": 1541956511008,
"timezoneOffset": -60,
"year": 118
},
}
],
},
{
"dislikes": [
{
"createDate": {
"date": 11,
"day": 0,
"hours": 18,
"minutes": 15,
"month": 10,
"seconds": 11,
"time": 1541956511011,
"timezoneOffset": -60,
"year": 118
},
},
{
"createDate": {
"date": 11,
"day": 0,
"hours": 18,
"minutes": 15,
"month": 10,
"seconds": 11,
"time": 1541956511028,
"timezoneOffset": -60,
"year": 118
},
}
],
}
]
所以我想对用户和time
他们不喜欢的不喜欢进行排序。因此,最早不喜欢的用户将排在第一位,并且在每个用户的dislikes
数组中最早不喜欢的用户将排在第一位。我相信我必须做多种排序,但我该怎么做呢?
检查下面的代码。这将让您根据时间进行排序:
function sortByTime(obj1, obj2){
return obj1.time - obj2.time;
}
array.sort((obj1, obj2)=>{
obj1.dislikes.sort(sortByTime);
obj2.dislikes.sort(sortByTime);
return obj1.dislikes[0].time - obj2.dislikes[0].time;
});
我没明白你说的最早是什么意思。上面的代码按升序对时间进行排序。
注意:上面的代码不处理缺少财产之夜的边缘情况
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句