首页 > 解决方案 > 比较 NodeJS IF 语句中的日期

问题描述

我正在使用 nodejs/javascript 并尝试将两个日期相互比较,以便在日期早于设定日期时应用特定样式。

这是我所拥有的:

var d = new Date();
var date = d.getMonth()+1+'/'+d.getDate()+'/'+(d.getFullYear().toString().substr(-2)-1);

var da = new Date('1/4/18');
var da_test = da.getMonth()+1+'/'+da.getDate()+'/'+(da.getFullYear().toString().substr(-2));

if(da_test < date) {
    // do something
}

date_test目前正在从一年前的今天返回日期,1/23/18. 我已将它自己比较的另一个日期设置为1/4/18. 虽然这应该是正确的,但由于某种原因,它不是每当 IF 语句运行时。但是,如果我将日期更改为类似的日期1/2/18,那么它会返回 true。情况如何,如何改变它,如果它是 18 年 1 月 23 日之前的任何日期,它将返回 true?

标签: javascriptnode.js

解决方案


您可以像这样比较这两个日期:

const d1 = new Date('1/23/18');
const d2 = new Date('1/4/18');
if (d2 < d1) ...

String在您的代码示例中,您正在比较两个


推荐阅读