如何判断字符串时间-A是否在时间B之前?

时间:2010-05-18 15:26:48

标签: javascript jquery

如果我有4个变量

的StartTime; 时间结束; startMerid; endMerid;

startMarid和endMarid要么是“AM”,要么是“PM”。

但是startTime和endTime将成为'dd:dd'

之类的字符串

因此可以开始:12:30 PM并结束:5:30 PM

如何确认结束时间不在开始时间之前?

谢谢!

2 个答案:

答案 0 :(得分:9)

您可以使用DateJS

Date.parse('12:30pm') < Date.parse('5:30pm'); // true

修改

贾斯汀在下面有一个很好的观点。您可以找到最新的en-US版本here

您可以在/trunk/build

中找到其他人

2016年编辑

对于那些在2016年以上发布这篇文章的人来说,看起来像DateJS的最新回购现在是GitHub:https://github.com/datejs/Datejs

此外,如今MomentJS似乎是一个非常受欢迎的选择。

答案 1 :(得分:2)

解析小时和分钟字段,这样您就有两个独立的变量。如果它是PM,则添加12到小时,除非小时值已经是12.您可以直接比较这些值:

if (startTimeHrs * 60 + startTimeMins) > 
   (  endTimeHrs * 60 + endTimeMins){ ... }