如何反转日期数组 [英] How do I reverse a date array

查看:82
本文介绍了如何反转日期数组的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我的日期数组如下:

I have the date array as follows:

["09/23/2019", "08/23/2019", "07/23/2019", "06/23/2019", "05/23/2019", "04/23/2019", "03/23/2019", "02/23/2019", "01/23/2019", "12/23/2018"]





我需要撤销它并从18/23/2018开始。



我试过



I need to reverse it and start from 12/23/2018 instead.

I tried

dates.reverse

但它完全弄乱了格式并打印未分类的日期。还尝试了

but it completely messes up the format and print unsorted date. Also tried

dates.sort()

并对日期从01/2019到09/2019进行排序,并在最后打印12/2018。



我的尝试:



and it sorts the dates from 01/2019 to 09/2019 and prints 12/2018 at the very end.

What I have tried:

stDate = 11/20/2018
etDate = 09/19/2019
 var Endnow = etDate.clone();
        var Endday = etDate.date();

 while(Endnow.isAfter(stDate)) {
                    var month = Endnow.clone().endOf("month");
                    if (Endnow.date() < Endday && Endday <= month.date()) {
                        Endnow.date(Endday);
                    }
                    dates.push(Endnow.format("MM/DD/YYYY"));
dates.reverse();
dates.sort();
                    Endnow = Endnow.clone().subtract({"months": 1});
                }

推荐答案

function datecomp( d1, d2 )
{
  var a1 = d1.split("/");
  var a2 = d2.split("/");
  a1 = a1[2] + a1[0] + a1[1];
  a2 = a2[2] + a2[0] + a2[1];
  return (parseInt(a1) - parseInt(a2));
}

dates.sort(datecomp);


这篇关于如何反转日期数组的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆