首頁 >web前端 >js教程 >JS之Date物件與取得系統目前時間詳解_javascript技巧

JS之Date物件與取得系統目前時間詳解_javascript技巧

WBOY
WBOY原創
2016-05-16 17:04:141211瀏覽

一、Date對象
每天一對象,今天來看看Date對象

每天一對象,今天來看看Date對象,相對於時間大家一定很熟悉,應為以前在網站中很多地方都會遇到這樣的時間特效。溫故而知新,今天我們來回憶一下Date物件。

我們先來看看他的定義:

dateObj = new Date()

dateObj = new Date(dateVal)
dateObj = new Date(year, month, date [, hours[, minutes[, seconds[,ms]]]])

必選項。如果是數字值,dateVal 表示指定日期與 1970 年 1 月 1 日午夜間全球標準時間的毫秒數。如果是字串,則 dateVal 依照 parse 方法中的規則進行解析。 dateVal 參數也可以是從某些 ActiveX® 物件傳回的 VT_DATE 值。 必選項。完整的年份,例如,1976(而不是 76)。 必選項。表示的月份,是從 0 到 11 之間的整數( 1 月至 12 月)。 必選項。表示日期,是從 1 到 31 之間的整數。 可選項。表示毫秒,是從 0 到 999 的整數。

Date 物件保存以毫秒為單位表示特定時間段。如果某個參數的值大於其範圍或為負數,則儲存的其他值將做相應的調整。例如,如果指定 150 秒,JScript 將該數字重新定義為 2 分 30 秒。

如果數字為 NaN,則該物件不代表特定的時間段。如果未向 Date 物件傳遞參數,它將初始化為目前時間 (UTC)。在能夠使用該物件前必須為其賦值。

Date 物件能夠表示的日期範圍約等於 1970 年 1 月 1 日前後各 285,616 年。

Date 物件有兩個不建立 Date 物件就可以呼叫的靜態方法。它們是 parse 和 UTC。

Date物件的方法很多,也很簡單在這裡就不列出了,OK,See Next!

特別注意:


*********************************************** ***************

var myDate = new Date(2006,11,23);

alert("year=" myDate.getYear() "******month=" myDate.getMonth() "**** ****day=" myDate.getDate());

運行之後的結果是 year=2006 ******month=11********day=23

*********************************************** ***************

這樣顯示都很正常,當new Date的時候傳進去的月份為12的時候,就出現的問題。


*********************************************** ***************

var myDate = new Date(2006,12,23);

alert("year=" myDate.getYear() "******month=" myDate.getMonth() "**** ****day=" myDate.getDate());

運行之後的結果是 year=2007 ******month=0********day=23

*********************************************** ***************

很納悶的一件事情。最後查資料得知month這個參數的值是0~11的,不能傳入12的這個值。解決方法就是在傳值的時候把month-1,然後在外面取的時候再 1。不知誰還有更好的辦法。

如:

var date=new Date(2010,0-1,15); //這裡0代表一月,減1就變成12月份了
 alert(date.getYear() "," (date. getMonth() 1) "," date.getDate());

var date=new Date(2010,12-1,15);

 alert(date.getYear() "," (date.getMonth() 1) "," date.getDate());

參數是字串的格式如:2010/1/6

範例:

var txtDepartureDate='2010-1-6'alert(txtDepartureDate.replace(/-/g,'/')); //使用正則將' -'全部替換成/var date = new Date(txtDepartureDate.replace(/-/g,'/'));
陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn