GMT格林威治時間格式轉換(轉timestamp時間戳或年月日時分秒)及其轉換差8個小時的問題

獲取當前時間戳

獲取當前時間戳
var now = new Date()
var now_timestamp = Date.parse(now)

時間戳(timestamp)轉格林威治時間(GMT)(Date類型)

時間戳(timestamp)轉格林威治時間(GMT)(Date類型)
var GMT =new Date(timestamp)

格林威治時間轉時間

 格林威治時間轉時間
 var timestamp = Date.parse(GMT_time)

差8個小時的解決方法(中國標準時間要+8小時)

差8個小時的解決方法(中國標準時間要+8小時)
var timestamp = Date.parse(GMT_time)+8*60*60*1000
//timestamp爲GMT的時間戳
//timestamp單位爲毫秒(ms)

格林威治時間轉年月日時分秒(注意如果GMT是中國標準時間,那麼轉換後得到的gmt則會變成中國標準時間+8小時!!!

格林威治時間轉年月日時分秒
var gmt = new Date(GMT)//這裏將GMT轉換成Date類型以便調用Date類的函數方法,不轉換的話,雖然控制檯打印出來的格式一樣,但卻無法調用Date類的函數方法
var Str = 
			gmt.getFullYear() + '-' +
            (gmt.getMonth() + 1) + '-' +//此處+1是因爲js當初設計的缺陷:它用0-11表示1-12月份。
             gmt.getDate() + ' ' +
             gmt.getHours()+ ':' +
             gmt.getMinutes() + ':' +
             gmt.getSeconds()
            

//由於gmt是GMT+8小時,所以需要減去八小時,此時就需要將gmt轉換成時間戳減去8小時的毫秒數,然後再轉成**(Date類型的)GMT**,再通過Date類的函數方法轉成年月日時分秒

var stamp_time=Date.parse(GMT)-8*60*60*1000;

                let date = new Date(stamp_time);
                console.log(time);
                console.log(date);
                let Str = date.getFullYear() + '-' +
                    (date.getMonth() + 1) + '-' +
                    date.getDate() + ' ' +
                    (date.getHours()) + ':' +
                    date.getMinutes() + ':' +
                    date.getSeconds();
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章