JavaScript中幾種時間格式之間的簡單轉換
日期對象
獲取當前中國標準時間
console.log(new Date()) //Wed Nov 15 2023 12:16:39 GMT+0800 (中國標準時間)
時間戳
將當前中國標準時間轉換為時間戳。
13位是以毫秒為單位
console.log(new Date().getTime()) //1700021927186
獲取當天的零點
setHours(0, 0, 0, 0)方法返回的是毫秒
console.log(new Date().setHours(0, 0, 0, 0)) //1699977600000
當前日期的ISO格式字符串或稱UTC時間(國際統(tǒng)一時間)
ISO格式字符串是一國際標準的日期和時間表示法,它的格式為YYYY-MM-DDThh:mm:ss.xxxZ,其中T表示時間分隔符,Z表示時區(qū)偏移量UTC。如果日期對象沒有設置時區(qū),則返回的字符串中時區(qū)偏移量為0。
tolsOString()方法會自動將日期對象轉換為UTC時間。UTC時間是一種標準的時間表示法,它不受時區(qū)的影響,因此可以在不同的時區(qū)之間進行比較和計算。
UTC時間相差北京時間8小時,比如2023-01-13T16:00:00.000Z,對應的北京時間:2023-01-14 00:00:00;20100607T152000+08。其中 “+08” 表示東八區(qū)。
console.log(new Date().toISOString()) //2023-11-14T16:00:00.000Z
我這有個需求,后端讓我返給他這樣的時間格式:2023-11-14T16:00:00Z,因此我用了個拼接字符串
console.log(new Date().toISOString().slice(0,-5) + 'Z' )
附:JS獲取UTC時間及各時區(qū)本地時間
為什么要獲取UTC時間:因為本地時間可以修改,修改后獲取的就是錯誤的,所以要獲取一個統(tǒng)一標準時間
function getLocalTime(i){
var d = new Date();
var len = d.getTime();
//本地時間與UTC時間的時間偏移差
var offset = d.getTimezoneOffset() * 60000;
//得到現在的UTC時間,各時區(qū)UTC時間相同
var utcTime = len + offset;
//得到時區(qū)標準時間
return new Date(utcTime + 3600000 * i);
//得到UTC時間戳
//return new Date(utcTime).getTime();
//得到時區(qū)時間戳
// return new Date(utcTime + 3600000 * i).getTime();
}
console.log("東八區(qū)-北京時間:" + getLocalTime(8)); //東八區(qū)-北京時間:Wed May 25 2022 10:10:32 GMT+0800 (中國標準時間)
console.log("西八區(qū)-太平洋時間(美國和加拿大):" + getLocalTime(-8)); //西八區(qū)-太平洋時間(美國和加拿大):Tue May 24 2022 18:10:32 GMT+0800 (中國標準時間)
// i:要得到那個時區(qū)的時間就傳幾,東區(qū)為正數,西區(qū)為負數
總結
到此這篇關于JavaScript中幾種時間格式之間的簡單轉換的文章就介紹到這了,更多相關JS時間格式轉換內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
解決Js先觸發(fā)失去焦點事件再執(zhí)行點擊事件的問題
今天小編就為大家分享一篇解決Js先觸發(fā)失去焦點事件再執(zhí)行點擊事件的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-08-08
javascript中的previousSibling和nextSibling的正確用法
這篇文章主要介紹了javascript中的previousSibling和nextSibling的正確用法的相關資料,需要的朋友可以參考下2015-09-09

