array sort 排序更接近今天的在前

使用 array.sort() 在做一个以时间为纬度的列表排序,
条件为 今天的在最上方,里今天越近的越靠前,但是未来的所有都在过去的前面
eg:
今天为 7 月 13日
2017.7.13
2017.7.14
2017.7.15
2017.7.12
2017.7.11
(实际为时间戳,为了方法表达以数字表示)

这样的排序应该怎么写 sort 的 function


呼啦一阵风
浏览 464回答 1
1回答

慕容森

看了你的方式,规则都自己写了就不需要 reverse 了Object.keys(data).sort(function (a, b) {&nbsp; var da = moment(data[a].noteDate, 'x').diff(moment(), 'day')&nbsp; var db = moment(data[b].noteDate, 'x').diff(moment(), 'day')&nbsp; if (da * db < 0) { return da - db }&nbsp; return Math.abs(db) - Math.abs(da)}).forEach(key => {&nbsp; // code});
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript