按日期排序不适用于边

时间:2016-05-01 10:45:17

标签: javascript sorting angular microsoft-edge

我正在尝试按日期排序数组对象

this.result.sort((a, b) => {
if (this.filter.orderBy === 'possession') {
  //if(moment(a.overview.possession_starts).isAfter(moment(b.overview.possession_starts))) 
  //sort string ascending
  if (moment(a.overview.possession_starts) > moment(b.overview.possession_starts)) 
     //sort string ascending
     return 1;
  return 0;
});

在Mozilla和chrome

中工作正常

2 个答案:

答案 0 :(得分:1)

您的回调会返回10undefined。这不是sort function所要求的。解决它:

if (this.filter.orderBy === 'possession') {
    this.result.sort((a, b) => {
           return moment(a.overview.possession_starts).milliseconds() - moment(b.overview.possession_starts).milliseconds();
    });
}

答案 1 :(得分:-1)

您可以用这一行替换您的代码。

this.filter.orderBy === 'possession' && this.result.sort((a, b) => moment(a.overview.possession_starts).milliseconds() - moment(b.overview.possession_starts).milliseconds());