JS中通過字符串構(gòu)造指定的日期對象
最近遇到這樣一個需求:首先要從數(shù)據(jù)庫中查出一個字段,這個字段是日期型的,然后在js中對這個日期進(jìn)行判斷,看它是否小于當(dāng)前時間兩個小時。關(guān)鍵的問題就是如何將數(shù)據(jù)庫中的時間變成在js中的時間。
我是這樣處理的,在從數(shù)據(jù)庫中查詢這個字段的時候就把把它轉(zhuǎn)化成了日期型,我使用了TO_CHAR函數(shù)(我用的是Oracle數(shù)據(jù)庫),如下所示:
TO_CHAR(arrivedate,'MONTH DD,YYYY HH24:MI:SS',
'NLS_DATE_LANGUAGE=AMERICAN')。然后通過隱藏域把這個字符串傳入到j(luò)s的函數(shù)當(dāng)中,最后調(diào)用js中Date對象的new Date(datestring)方法構(gòu)造出一個Date對象,它與我們數(shù)據(jù)庫中對應(yīng)的那個字段表示同一個時間。接下來的事情就好辦了,通過
new Date()得到當(dāng)期日期,然后比較這兩個日期對象的毫秒數(shù)就可以了。這里有個要注意的地方是,在js中利用new Date(datestring)得到指定的日期對象時,這個datestring必須要滿足一定的格式要求,它的格式為'Month Day,Year Hours:Minutes:Seconds',這也是為什么我從數(shù)據(jù)庫中查詢?nèi)掌跁r要指定格式為 “MONTH DD,YYYY HH24:MI:SS”的原因。
