验证两个日期,一个日期应该大于Javascript中的其他日期

时间:2016-09-15 08:06:15

标签: javascript jquery validation date

我有两个日期,我通过javascript输入字段

var Date1 = document.nocAddition.Date1.value;
var Date2 = document.nocAddition.Date2.value;

我正在尝试验证日期1应该总是超过日期2而我正在编写以下代码:

var dateA = new Date(Date1);
var dateB = new Date(Date2);
if(Date.parse(dateA) < Date.parse(dateB)){
   alert('start is less than End');
   return false;
} else {
   alert('end is less than start');
   return false;
}

但是它与循环中的条件不匹配并且始终在其他之后发出警报。 有没有新方法通过Javascript比较两个日期?请帮忙。

2 个答案:

答案 0 :(得分:1)

这很简单:

[{"Positive":"14.71","Neutral":"50.0","Negative":"35.29"}]

比较2个日期实例将正常工作。它只是隐式调用valueOf,将Date实例强制转换为整数,可以使用所有比较运算符进行比较。好吧,要100%准确:Date实例将被强制转换为Number类型,因为JS不知道整数或浮点数,它们都是有符号的64位IEEE 754双精度浮点数。

答案 1 :(得分:0)

function compareDate(date1,date2){
    date1 = date1.split("-").reverse().join("-"); //formating 
    date2 = date2.split("-").reverse().join("-"); //formating 
    var oneDay = 24 * 60 * 60 * 1000;    
    var firstDate = new Date(date1);
    var secondDate = new Date(date2);
    return (Math.round((secondDate.getTime() - firstDate.getTime()) / (oneDay)) > 0);
}

例如

// compareDate('2016-09-15','2016-09-17');

as formate

compareDate('15-11-2016','17-11-2015');