JS日期比较问题

时间:2019-02-07 21:07:56

标签: javascript datetime time compare difference

我想将启动时间与当前时间进行比较,结果很奇怪。

从字符串中构建日期,如下所示:

fechIni = "2019-02-07"
timeIni = "17:40"
var datepartsIni = fechIni.split("-");
var horapartsIni = timeIni.split(":");
var dateIni = new Date(datepartsIni[0], datepartsIni[1], datepartsIni[2], horapartsIni[0], horapartsIni[1]);

如果打印dateIni,我会得到一些类似的东西:2019年3月7日星期四17:40:00 GMT-0300(智利德拉维拉诺)女巫我认为是正确的。

然后,我将该日期与当前日期进行比较(因为不允许做某事)。

var currentdate = new Date();

当我比较它们时(想象dateIni比currentdate早):

if (dateIni > currentdate) {... do stuff ...}

当它应该为假时,我就为真。我尝试使用.valueOf(),转换为milis,转换为纪元并计算差值...但是我无法解决问题。

我附上控制台输出和代码的屏幕截图。

Code

Code2

更新: 解决了!!诀窍是设置日期:

var dateFin = new Date(datepartsFin[0], datepartsFin[1] - 1, datepartsFin[2], horapartsFin[0], horapartsFin[1]);

代替

var dateFin = new Date(datepartsFin[0], datepartsFin[1], datepartsFin[2], horapartsFin[0], horapartsFin[1]); //WRONG in my case

0 个答案:

没有答案