javascript時間戳函式-時間戳總結
阿新 • • 發佈:2019-01-30
javascript時間戳經常用到,現在總結一下。
一、時間戳函式
<script>function getLocalTime(nS){returnnewDate(parseInt(nS)*1000).toLocaleString().replace(/:\d{1,2}$/,' ');}
alert(getLocalTime(1293072805));</script>
也可以用如下,想取幾位就幾位,注意,空格也算!
<script>function getLocalTime(nS){returnnewDate(parseInt(nS)*1000).toLocaleString ().substr(0,14)}
alert(getLocalTime(1293072805));</script>
如果想彈出:2014-08-20 10:00:00這個格式的也好辦
<script>function getLocalTime(nS){returnnewDate(parseInt(nS)*1000).toLocaleString().replace(/年|月/g,"-").replace(/日/g," ");}
alert(getLocalTime(1177824835));</script>
另外,也可以這麼寫:
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=newDate(1230999938);
alert(formatDate(d));
二、知識普及
1、當前系統區域設定格式(toLocaleDateString和toLocaleTimeString)
例子:(newDate()).toLocaleDateString()+" "+(newDate()).toLocaleTimeString()結果:2008年1月29日16:13:11
2.普通字串(toDateString和toTimeString)
例子:(newDate()).toDateString()+" "+(newDate()).toTimeString()結果:TueJan29200816:13:11 UTC+0800
3.格林威治標準時間(toGMTString)
例子:(newDate()).toGMTString()結果:Tue,29Jan200808:13:11 UTC
4.全球標準時間(toUTCString)
例子:(newDate()).toUTCString()結果:Tue,29Jan200808:13:11 UTC
5.Date物件字串(toString)
例子:(newDate()).toString()結果:TueJan2916:13:11 UTC+08002008Date物件建構函式Date物件具有多種建構函式。newDate()newDate(milliseconds)newDate(datestring)newDate(year, month)newDate(year, month, day)newDate(year, month, day, hours)newDate(year, month, day, hours, minutes)newDate(year, month, day, hours, minutes, seconds)newDate(year, month, day, hours, minutes, seconds, microseconds)Date物件建構函式引數說明
milliseconds -距離JavaScript內部定義的起始時間1970年1月1日的毫秒數
datestring -字串代表的日期與時間。此字串可以使用Date.parse()轉換
year -四位數的年份,如果取值為0-99,則在其之上加上1900
month -0(代表一月)-11(代表十二月)之間的月份
day -1-31之間的日期
hours -0(代表午夜)-23之間的小時數
minutes -0-59之間的分鐘數
seconds -0-59之間的秒數
microseconds -0-999之間的毫秒數Date物件返回值如果沒有任何引數,將返回當前日期如果引數為一個數字,將數字視為毫秒值,轉換為日期如果引數為一個字串,將字串視為日期的字串表示,轉換為日期還可以使用六個建構函式精確定義,並返回時間示例var d1 =newDate();
document.write(d1.toString());var d2 =newDate("2009-08-08 12:12:12);
document.write(d2.toString());
var d3 = new Date(2009, 8, 8);
document.write(d3.toString());
Date做為JavaScript的一種內建物件,必須使用new的方式建立。
Date物件在JavaScript內部的表示方式是,距1970年1月1日午夜(GMT時間)的毫秒數(時間戳),我們在這裡也把Date的內部表示形式稱為時間戳。可以使用getTime()將Date物件轉換為Date的時間戳,方法setTime()可以把Date的時間戳轉換為Date的標準形式。
Date函式使用語法
date.方法名(引數1,引數2,...);
Date.方法名();
date代表一個日期物件的例項,Date代表日期物件,date.方法名呼叫的為物件的成員函式
Date.方法名呼叫的為物件的靜態函式
示例
var d=new Date();
var d2=Date.UTC();
JavaScript_Date函式按功能分類
日期獲取類函式
Date() 函式 -- Date物件的建構函式
getDate() 函式 -- 返回date物件中的月份中的天數(1-31)
getDay()函式 -- 返回date物件中的星期中的天數(0-6)
getFullYear() 函式 -- 返回date物件中的四位數年份
getHours()函式 -- 返回date物件中的小時數(0-23)
getMilliseconds() 函式 -- 返回date物件中的毫秒數(0-999)
getMinutes() 函式 -- 返回date物件中的分鐘數(0-59)
getMonth() 函式 -- 返回date物件中的月份數(0-11)
getSeconds() 函式 -- 返回date物件中的秒數(0-59)
getTime() 函式 -- 返回date物件的時間戳表示法(毫秒錶示)
getTimezoneOffset() 函式 -- 返回本地時間與用UTC表示當前日期的時間差,以分鐘為單位
getUTCDate() 函式 -- 返回date物件中用世界標準時間(UTC)表示的月份中的一天(1-31)
getUTCDay() 函式 -- 返回date物件中用世界標準時間(UTC)表示的週中的一天(0-6)
getUTCFullYear() 函式 -- 返回date物件中用世界標準時間(UTC)表示的四位年份
getUTCHours() 函式 -- 返回date物件中用世界標準時間(UTC)表示的小時數(0-23)
getUTCMilliseconds() 函式 -- 返回date物件中用世界標準時間(UTC)表示的毫秒數(0-999)
getUTCMinutes() 函式 -- 返回date物件中用世界標準時間(UTC)表示的分鐘數(0-59)
getUTCMonth() 函式 -- 返回date物件中用世界標準時間(UTC)表示的月份數(0-11)
getUTCSeconds() 函式 -- 返回date物件中用世界標準時間(UTC)表示的秒數(0-59)
getYear() 函式 -- 返回date物件的年份(真實年份減去1900)
Date.UTC()函式 -- 返回date物件距世界標準時間(UTC)1970年1月1日午夜之間的毫秒數(時間戳)
日期設定類函式
setDate() 函式 -- 設定date物件中月份的一天,並返回date物件距1970年1月1日午夜之間的毫秒數(時間戳)
setFullYear() 函式 -- 設定date物件中的年份,月份和天,並返回date物件距1970年1月1日午夜之間的毫秒數(時間戳)
setHours() 函式 -- 設定date物件的小時,分鐘,秒和毫秒,並返回date物件距1970年1月1日午夜之間的毫秒數(時間戳)
setMilliseconds() 函式 -- 設定date物件的毫秒數,並返回date物件距1970年1月1日午夜之間的毫秒數(時間戳)
setMinutes() 函式 -- 設定date物件的分鐘,秒,毫秒,並返回date物件距1970年1月1日午夜之間的毫秒數(時間戳)
setMonth() 函式 -- 設定date物件中月份,天,並返回date物件距1970年1月1日午夜之間的毫秒數(時間戳)
setSeconds() 函式 -- 設定date物件中月份的一天,並返回date物件距1970年1月1日午夜之間的毫秒數(時間戳)
setTime() 函式 -- 使用毫秒數設定date物件,並返回date物件距1970年1月1日午夜之間的毫秒數(時間戳)
setUTCDate() 函式 -- 設定date物件中用世界標準時間(UTC)表示的月份的一天,並返回date物件距1970年1月1日午夜之間的毫秒數(時間戳)
setUTCFullYear() 函式 -- 設定date物件中用世界標準時間(UTC)表示的年份,月份和天,並返回date物件距1970年1月1日午夜之間的毫秒數(時間戳)
setUTCHours() 函式 --- 設定date物件中用世界標準時間(UTC)表示的小時,分鐘,秒和毫秒,並返回date物件距1970年1月1日午夜之間的毫秒數(時間戳)
setUTCMilliseconds() 函式 -- 設定date物件中用世界標準時間(UTC)表示的毫秒數,並返回date物件距1970年1月1日午夜之間的毫秒數(時間戳)
setUTCMinutes() 函式 -- 設定date物件中用世界標準時間(UTC)表示的分鐘,秒,並返回date物件距1970年1月1日午夜之間的毫秒數(時間戳)
setUTCMonth() 函式 -- 設定date物件中用世界標準時間(UTC)表示的月份,天,並返回date物件距1970年1月1日午夜之間的毫秒數(時間戳)
setUTCSeconds() 函式 -- 設定date物件中用世界標準時間(UTC)表示的秒,毫秒,並返回date物件距1970年1月1日午夜之間的毫秒數(時間戳)
setYear() 函式 -- 設定date物件的年份(真實年份減去1900)
日期列印類函式
toDateString() 函式 -- 返回date物件的日期部分的字串表示
toGMTString() 函式 -- 返回date物件的格林威治時間(GMT)的字串表示
toLocaleDateString函式 -- 返回date物件的日期部分的本地化字串
toLocaleTimeString函式 -- 返回date物件的時間部分的本地化字串
toTimeString()函式 -- 返回date物件的時間部分的字串
toUTCString函式 -- 返回date物件的世界標準時間(UTC)的字串表示
日期解析類函式
Date.parse() 函式 -- 解析一個日期的字串,並返回該日期距1970年1月1日午夜之間的毫秒數(時間戳)
JavaScript_Date函式按照字母分類
Date() 函式 -- Date物件的建構函式
getDate() 函式 -- 返回date物件中的月份中的天數(1-31)
getDay()函式 -- 返回date物件中的星期中的天數(0-6)
getFullYear() 函式 -- 返回date物件中的四位數年份
getHours()函式 -- 返回date物件中的小時數(0-23)
getMilliseconds() 函式 -- 返回date物件中的毫秒數(0-999)
getMinutes() 函式 -- 返回date物件中的分鐘數(0-59)
getMonth() 函式 -- 返回date物件中的月份數(0-11)
getSeconds() 函式 -- 返回date物件中的秒數(0-59)
getTime() 函式 -- 返回date物件的時間戳表示法(毫秒錶示)
getTimezoneOffset() 函式 -- 返回本地時間與用UTC表示當前日期的時間差,以分鐘為單位
getUTCDate() 函式 -- 返回date物件中用世界標準時間(UTC)表示的月份中的一天(1-31)
getUTCDay() 函式 -- 返回date物件中用世界標準時間(UTC)表示的週中的一天(0-6)
getUTCFullYear() 函式 -- 返回date物件中用世界標準時間(UTC)表示的四位年份
getUTCHours() 函式 -- 返回date物件中用世界標準時間(UTC)表示的小時數(0-23)
getUTCMilliseconds() 函式 -- 返回date物件中用世界標準時間(UTC)表示的毫秒數(0-999)
getUTCMinutes() 函式 -- 返回date物件中用世界標準時間(UTC)表示的分鐘數(0-59)
getUTCMonth() 函式 -- 返回date物件中用世界標準時間(UTC)表示的月份數(0-11)
getUTCSeconds() 函式 -- 返回date物件中用世界標準時間(UTC)表示的秒數(0-59)
getYear() 函式 -- 返回date物件的年份(真實年份減去1900)
Date.parse() 函式 -- 解析一個日期的字串,並返回該日期距1970年1月1日午夜之間的毫秒數(時間戳)
setDate() 函式 -- 設定date物件中月份的一天,並返回date物件距1970年1月1日午夜之間的毫秒數(時間戳)
setFullYear() 函式 -- 設定date物件中的年份,月份和天,並返回date物件距1970年1月1日午夜之間的毫秒數(時間戳)
setHours() 函式 -- 設定date物件的小時,分鐘,秒和毫秒,並返回date物件距1970年1月1日午夜之間的毫秒數(時間戳)
setMilliseconds() 函式 -- 設定date物件的毫秒數,並返回date物件距1970年1月1日午夜之間的毫秒數(時間戳)
setMinutes() 函式 -- 設定date物件的分鐘,秒,毫秒,並返回date物件距1970年1月1日午夜之間的毫秒數(時間戳)
setMonth() 函式 -- 設定date物件中月份,天,並返回date物件距1970年1月1日午夜之間的毫秒數(時間戳)
setSeconds() 函式 -- 設定date物件中月份的一天,並返回date物件距1970年1月1日午夜之間的毫秒數(時間戳)
setTime() 函式 -- 使用毫秒數設定date物件,並返回date物件距1970年1月1日午夜之間的毫秒數(時間戳)
setUTCDate() 函式 -- 設定date物件中用世界標準時間(UTC)表示的月份的一天,並返回date物件距1970年1月1日午夜之間的毫秒數(時間戳)
setUTCFullYear() 函式 -- 設定date物件中用世界標準時間(UTC)表示的年份,月份和天,並返回date物件距1970年1月1日午夜之間的毫秒數(時間戳)
setUTCHours() 函式 --- 設定date物件中用世界標準時間(UTC)表示的小時,分鐘,秒和毫秒,並返回date物件距1970年1月1日午夜之間的毫秒數(時間戳)
setUTCMilliseconds() 函式 -- 設定date物件中用世界標準時間(UTC)表示的毫秒數,並返回date物件距1970年1月1日午夜之間的毫秒數(時間戳)
setUTCMinutes() 函式 -- 設定date物件中用世界標準時間(UTC)表示的分鐘,秒,並返回date物件距1970年1月1日午夜之間的毫秒數(時間戳)
setUTCMonth() 函式 -- 設定date物件中用世界標準時間(UTC)表示的月份,天,並返回date物件距1970年1月1日午夜之間的毫秒數(時間戳)
setUTCSeconds() 函式 -- 設定date物件中用世界標準時間(UTC)表示的秒,毫秒,並返回date物件距1970年1月1日午夜之間的毫秒數(時間戳)
setYear() 函式 -- 設定date物件的年份(真實年份減去1900)
toDateString() 函式 -- 返回date物件的日期部分的字串表示
toGMTString() 函式 -- 返回date物件的格林威治時間(GMT)的字串表示
toLocaleDateString函式 -- 返回date物件的日期部分的本地化字串
toLocaleTimeString函式 -- 返回date物件的時間部分的本地化字串
toTimeString()函式 -- 返回date物件的時間部分的字串
toUTCString函式 -- 返回date物件的世界標準時間(UTC)的字串表示
Date.UTC()函式 -- 返回date物件距世界標準時間(UTC)1970年1月1日午夜之間的毫秒數(時間戳)
三、Javascript的時間戳和php的時間戳轉換
js的時間戳通常是13位,php的時間戳是10位,轉換函式如下:
var nowtime =(newDate).getTime();/*當前時間戳*//*轉換時間,計算差值*/function comptime(beginTime,endTime){var secondNum = parseInt((endTime-beginTime*1000)/1000);//計算時間戳差值 if(secondNum>=0&&secondNum<60){return secondNum+'秒前';}elseif(secondNum>=60&&secondNum<3600){var nTime=parseInt(secondNum/60);return nTime+'分鐘前';}elseif(secondNum>=3600&&secondNum<3600*24){var nTime=parseInt(secondNum/3600);return nTime+'小時前';}else{var nTime = parseInt(secondNum/86400);return nTime+'天前';}}
t = comptime("1324362556",nowtime);//timestamp為PHP通過ajax回傳的時間戳
alert(t);