按日期排序 ImmutableJS 和 Moment()

Sort by Date ImmutableJS and Moment()

我有 arrayobjects。对象具有键 datedatemoment 格式的 date,创建方式如下:moment('1970-11-11').

如何按 ascending/descending 顺序按日期对数组进行排序?

那个

arrayOfObjects.sort((a, b) => b.get('date') - a.get('date');

也不

arrayOfObjects.sort((a, b) => b.get('date').format('DD.MM.YYYY') - a.get('date').format('DD.MM.YYYY'))

不排序。

试试这个:

arrayOfObjects.sort((a, b) => b.get('date').unix() - a.get('date').unix());

请原谅我这么问,但如果我理解正确的话,你在那个数组中有 moment 个对象完全能够进行日期计算和差异。所以,如果是这样,为什么不呢:

var data = [moment('1972-11-11'), moment('1971-11-11'), moment('1973-11-11')]

const result = data.sort((a,b) => a.diff(b))  // change to b.diff(a) for desc

console.log(result)
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.22.2/moment.min.js"></script>

根据 diff 上的即时文档。不需要date/unix