【问题标题】:Descending order date using moment.js in jquery?在jquery中使用moment.js降序订单日期?
【发布时间】:2019-02-22 05:39:27
【问题描述】:

我的 json 响应中有一组日期。我正在使用 moment.js 来格式化我的日期,它工作正常。但是,现在我想要的是使用相同的 moment.js 以 desc 顺序订购日期。 这是我使用时刻格式化日期的代码行:

tableContent += "<li>"+moment(response[itr][segment]).format('MM-DD-YYYY')+"</li>";

【问题讨论】:

  • Sort with moment.js的可能重复
  • 不,这不是可能的重复。这个答案不能解决我的问题

标签: jquery momentjs


【解决方案1】:

可以使用如下方式,不绑定momentjs:

Array.orderBy = (array, method, desc) => {
  var pre = desc ? -1 : 1
  var cmp = (a,b,p) => pre*(a[p]() < b[p]() ? -1 : (a[p]() > b[p]() ? 1 : 0));
  return array.sort((a,b) => cmp(a,b,method) )
};

var dates = ["2019-02-18","2019-02-16","2019-02-17","2019-02-19","2019-02-22","2019-02-21","2019-02-20"].map(x => moment(x))
console.log(dates)

console.log(Array.orderBy(dates, 'valueOf', true)) // descending
console.log(Array.orderBy(dates, 'valueOf'))       // ascending
&lt;script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.24.0/moment.min.js"&gt;&lt;/script&gt;

但是,您需要先将所有response[itr][segment] 值保存在一个中间数组中。然后对其进行排序,然后构建列表。

【讨论】:

  • 我是这样使用的 var dateArray = []; dateArray.push(moment(response[itr][segment]).format('MM-DD-YYYY')); // console.log(dateArray); console.log(Array.orderBy(dateArray, 'valueOf', true)) 但我仍然没有得到 desc 顺序。
  • 因为你在调用格式。下单前不要打电话。我的解决方案是使用时刻实例,而不是字符串。
  • 是的,没错,我没有打电话。上面提到的是错误的。var dateArray = []; dateArray.push(response[itr][segment]); // console.log(dateArray); console.log(Array.orderBy(dateArray, 'valueOf', true)) 像这样只有我叫但仍然没有得到输出[“2019-02-16”] [“2019-02-17”] [“2019-02 -18"] ["2019-02-19"] ["2019-02-20"] ["2019-02-21"] ["2019-02-22"] 我只得到这个输出。但实际上我想按以下顺序:["2019-02-22"], ["2019-02-21"]...等
  • 我已经更改了上面的示例。我用过你的日期。并且它是按你想要的降序排列的。你有运行sn-p吗?你正在做一些与你所说的不同的事情。
  • 它在你的 sn-p 中工作。但是当我在我的代码中使用相同的 var dateArray = []; dateArray.push(response[itr][segment]); console.log(Array.orderBy(dateArray, 'valueOf', true));它不起作用。我得到的是 desc 订单格式
猜你喜欢
  • 2019-05-25
  • 2016-12-16
  • 2016-11-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-10-02
  • 1970-01-01
相关资源
最近更新 更多