【问题标题】:How to compare two dates in JavaScript [duplicate]如何在JavaScript中比较两个日期[重复]
【发布时间】:2012-09-02 11:55:43
【问题描述】:

可能重复:
Compare dates with JavaScript

我有两个日期,开始日期和结束日期。我是这样比较它们的:

var fromDate = $("#fromDate").val();
var throughDate = $("#throughDate").val();

if (startdate >= enddate) {
    alert('start date cannot be greater then end date')
}

它给出了正确的结果...唯一的问题是当我比较日期 01/01/2013 和 01/01/2014 时。

如何正确比较 JavaScript 中的日期?

【问题讨论】:

标签: javascript


【解决方案1】:

您可以使用它来进行比较:

if (new Date(startDate) > new Date(endDate)) 

使用 new Date(str) 解析值并将其转换为 Date 对象。

【讨论】:

  • 非常适合我!谢谢!
【解决方案2】:

您正在比较字符串。您需要先将它们转换为日期。您可以通过拆分字符串并构造 new Date

来实现
new Date(year, month, day [, hour, minute, second, millisecond])

根据你的日期格式,它看起来像

var parts = "01/01/2013".split("/");
var myDate = new Date(parts[2], parts[1] - 1, parts[0]);

【讨论】:

    【解决方案3】:
            var fromDate = $("#fromDate").val();
          var toDate = $("#throughDate").val();
    
        //Detailed check for valid date ranges
            //if your date is like 09-09-2012
        var frommonthfield = fromDate.split("-")[1];
        var fromdayfield = fromDate.split("-")[0];
        var fromyearfield = fromDate.split("-")[2];
    
    
        var tomonthfield = toDate.split("-")[1];
        var todayfield = toDate.split("-")[0];
        var toyearfield = toDate.split("-")[2];
    
    
        var fromDate = new Date(fromyearfield, frommonthfield-1, fromdayfield);
        var toDate = new Date(toyearfield, tomonthfield-1, todayfield);
    
        if(fromDate.getTime() > today.getTime()){
            alert("from Date should be less than today")
            return;
        }
        if(toDate.getTime() > today.getTime()){
            alert("to Date should be less than today")
            return;
        }
        if(fromDate.getTime() > toDate.getTime()){
            alert("from date should be less than to date")
            return;
        }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-11-24
      • 1970-01-01
      • 2021-10-03
      • 2011-08-09
      • 2013-09-12
      相关资源
      最近更新 更多