時間戳記和時間日期的轉換是常見的操作,以下就透過程式碼實例介紹如何實現它們之間的相互轉換。
在沒學習本文之前先跟大家介紹下javascript中Date()建構子參數:
關於Date物件大家想必一定不陌生,使用Date()建構子建立一個時間物件是最基本的操作了,例如:
var theDate=new Date(); theDate.getDate();
使用以上程式碼可以取得目前日期的天。
上面是對於Date()建構子最簡單的應用了,Date物件具有多種建構函數,下面簡單列舉如下:
new Date() new Date(milliseconds) new Date(datestring) new Date(year, month) new Date(year, month, day) new Date(year, month, day, hours) new Date(year, month, day, hours, minutes) new Date(year, month, day, hours, minutes, seconds) new Date(year, month, day, hours, minutes, seconds, microseconds)
下面就對以上幾個建構子進行簡單的分析。
1.new Date(),沒有參數的時候,建立的是目前時間日期物件。
2.new Date(milliseconds),當參數為數字的時候,那麼這個參數就是時間戳,被視為毫秒,創建一個距離1970年1月一日指定毫秒的時間日期物件。
3.new Date(datestring),此參數是一個字串,而此字串一定能夠使用Date.parse()轉換。
4.以下六個建構子是精確定義:
1).year,是一個整數,如果是0-99,那麼在此基礎上加1900,其他的都原樣返回。
2).month,是一個整數,範圍是0-11。
3.day,是一個整數,範圍是1-31。
4.hours,是一個整數,範圍是0-23。
5.minutes,是一個整數,範圍是0-59。
6.seconds,是一個整數,範圍是0-59.
7.microseconds,是一個整數,範圍是0-9999。
程式碼實例:
var d1=new Date(); var d2=new Date(1320336000000); var d3=new Date("2013-8-20 18:20:30"); var d4=new Date(2013,7,26);
一.時間日期轉換為時間戳:
現在有這麼一個時間日期:"2013/5/12 20:10:20",下面將其轉換為時間戳形式:
程式碼如下:
var dateStr="2013/5/12 20:10:20"; var date=new Date(dateStr); console.log(date.getTime());
利用getTime()函數即可取得指定時間日期物件的時間戳記。
接下來再給大家介紹javascript的Date物件的getTime()方法
getTime()方法的定義與用法:
此方法傳回目前時間距1970年1月1日之間的毫秒數。
註:此方法需要使用一個Date物件來呼叫。
點選可參考更多相關Date物件方法與屬性。
語法結構:
dateObject.getTime()
實例碼:
var myDate=new Date() console.log(myDate.getTime())
以上程式碼可以輸出目前時間距1970年1月1日之間的毫秒數。
其實還有其他很多方法,這裡就不介紹了,只要知道此中方式就可以,其他可以自己慢慢累積。
二.時間戳轉換為事件日期:
實例碼一:
var date=new Date(1368360620000); console.log(date.toLocaleString());
javascript的Date物件的toLocaleString()方法 toLocaleString()方法的定義與用法:
此方法可依本機時間把 Date 物件轉換為字串,並回傳此字串。
註:此方法需要用Date物件的實例呼叫。
語法結構:
dateObject.toLocaleString()
實例碼:
var d=new Date(); console.log(d.toLocaleString());
說下javascript的Date物件的toLocaleString()方法
toLocaleString()方法的定義與用法:
此方法可依本機時間把 Date 物件轉換為字串,並回傳此字串。
註:此方法需要用Date物件的實例呼叫。
語法結構:
dateObject.toLocaleString()
實例碼:
var d=new Date(); console.log(d.toLocaleString());
實例二:
function formatDate(now) { var year=now.getYear(); var month=now.getMonth()+1; var date=now.getDate(); var hour=now.getHours(); var minute=now.getMinutes(); var second=now.getSeconds(); return year+"-"+month+"-"+date+" "+hour+":"+minute+":"+second; } var d=new Date(1368360620000); console.log(formatDate(d));