如果我有4個變量如何判斷字符串時間-A是否在時間-B之前?
startTime; endTime; startMerid; endMerid;
startMarid和endMarid要麼是'AM'要麼是'PM'。
但開始時間和結束時間都將是字符串,如「DD:DD」
所以可以開始:12:30 PM
和結束:5:30 PM
我如何可以驗證結束時間不得早於開始時間?
謝謝!
如果我有4個變量如何判斷字符串時間-A是否在時間-B之前?
startTime; endTime; startMerid; endMerid;
startMarid和endMarid要麼是'AM'要麼是'PM'。
但開始時間和結束時間都將是字符串,如「DD:DD」
所以可以開始:12:30 PM
和結束:5:30 PM
我如何可以驗證結束時間不得早於開始時間?
謝謝!
您可以使用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這些天是非常流行的選擇。
解析出小時和分鐘字段,因此您有兩個單獨的變量。然後加入12小時,如果它是PM,除非小時值已經是12。然後,您可以直接比較值:
if (startTimeHrs * 60 + startTimeMins) >
( endTimeHrs * 60 + endTimeMins){ ... }
'然後加上12小時,如果它是PM.' ruh-roh ...如果在12點到12點59分之間你不能加12小時! – 2010-05-18 15:34:41
這是一個偉大的插件,但必須非常小心,你下載什麼版本的這個插件。頭版仍然鏈接到2007年11月的一個版本,儘管SVN提供了另一個版本,有大約一年的修復。當我被DateJS認爲「A」在「2009年8月4日」是爲了'AM'的錯誤而被燒燬時,我發現這一點很難... – 2010-05-18 15:32:33
@Justin Ethier - 謝謝,我一直在使用11月2007版多年! – Matt 2010-05-18 15:37:37