【问题标题】:Compare dates in JavaScript [duplicate]比较 JavaScript 中的日期 [重复]
【发布时间】:2015-01-09 12:03:13
【问题描述】:

我想在 Javascript 中比较以下日期。请帮帮我。

$fromdate=2014-12-08
$todate=2014-12-12

我想将两个日期与当前日期进行比较。请告诉我如何在 if 循环中编码。

【问题讨论】:

  • 向我们展示您的尝试
  • 一个快速的谷歌搜索已经返回了几个重复的 SO:google.ch/…
  • 您对比较结果有何期望?
  • 通过比较来自我输入字段的日期,我会将它与当前日期进行比较,并使用它在 datepicker 中显示它
  • 您为什么不在问题中更清楚地解释这一点?你有什么尝试,向我们展示你的代码?没有代码,没有尝试过,你读过Date,甚至对你如何能够做到这一点有任何想法吗?

标签: javascript


【解决方案1】:

您可以构造一个Date 对象,然后根据需要进行比较:

// Date months are 0-based
var fromDate = new Date(2014, 11, 8);
var toDate = new Date(); // Today

// Then you can calculate the difference between them
var seconds = (toDate.getTime() - fromDate.getTime())/1000;
var minutes = ~~ (seconds/60);
var hours = ~~ (minutes/60);
var days = ~~ (hours/24);

然后您可以使用差异来计算它们之间的秒数、小时数、天数等​​。

【讨论】:

    【解决方案2】:

    日期可以用数字表示为从一个纪元开始的毫秒数(javascript 中为 1970 年 1 月 1 日 UTC)。

    为今天、开始和结束日期创建一个Date 对象。

    使用getTime方法获取这些日期的数字表示

    现在将今天的表示与开始和结束表示进行比较。

    如果今天的数值大于或等于起始数值,AND 小于或等于结束数值,THEN 今天在提供的范围内,否则 它没有。

    【讨论】:

      猜你喜欢
      • 2011-02-14
      • 1970-01-01
      • 2012-06-25
      • 1970-01-01
      • 2013-09-12
      • 2011-11-06
      • 1970-01-01
      • 2020-09-17
      • 1970-01-01
      相关资源
      最近更新 更多