JavaScript中幾種時(shí)間格式之間的簡(jiǎn)單轉(zhuǎn)換
日期對(duì)象
獲取當(dāng)前中國(guó)標(biāo)準(zhǔn)時(shí)間
console.log(new Date()) //Wed Nov 15 2023 12:16:39 GMT+0800 (中國(guó)標(biāo)準(zhǔn)時(shí)間)
時(shí)間戳
將當(dāng)前中國(guó)標(biāo)準(zhǔn)時(shí)間轉(zhuǎn)換為時(shí)間戳。
13位是以毫秒為單位
console.log(new Date().getTime()) //1700021927186
獲取當(dāng)天的零點(diǎn)
setHours(0, 0, 0, 0)方法返回的是毫秒
console.log(new Date().setHours(0, 0, 0, 0)) //1699977600000
當(dāng)前日期的ISO格式字符串或稱UTC時(shí)間(國(guó)際統(tǒng)一時(shí)間)
ISO格式字符串是一國(guó)際標(biāo)準(zhǔn)的日期和時(shí)間表示法,它的格式為YYYY-MM-DDThh:mm:ss.xxxZ,其中T表示時(shí)間分隔符,Z表示時(shí)區(qū)偏移量UTC。如果日期對(duì)象沒有設(shè)置時(shí)區(qū),則返回的字符串中時(shí)區(qū)偏移量為0。
tolsOString()方法會(huì)自動(dòng)將日期對(duì)象轉(zhuǎn)換為UTC時(shí)間。UTC時(shí)間是一種標(biāo)準(zhǔn)的時(shí)間表示法,它不受時(shí)區(qū)的影響,因此可以在不同的時(shí)區(qū)之間進(jìn)行比較和計(jì)算。
UTC時(shí)間相差北京時(shí)間8小時(shí),比如2023-01-13T16:00:00.000Z,對(duì)應(yīng)的北京時(shí)間:2023-01-14 00:00:00;20100607T152000+08。其中 “+08” 表示東八區(qū)。
console.log(new Date().toISOString()) //2023-11-14T16:00:00.000Z
我這有個(gè)需求,后端讓我返給他這樣的時(shí)間格式:2023-11-14T16:00:00Z,因此我用了個(gè)拼接字符串
console.log(new Date().toISOString().slice(0,-5) + 'Z' )
附:JS獲取UTC時(shí)間及各時(shí)區(qū)本地時(shí)間
為什么要獲取UTC時(shí)間:因?yàn)楸镜貢r(shí)間可以修改,修改后獲取的就是錯(cuò)誤的,所以要獲取一個(gè)統(tǒng)一標(biāo)準(zhǔn)時(shí)間
function getLocalTime(i){ var d = new Date(); var len = d.getTime(); //本地時(shí)間與UTC時(shí)間的時(shí)間偏移差 var offset = d.getTimezoneOffset() * 60000; //得到現(xiàn)在的UTC時(shí)間,各時(shí)區(qū)UTC時(shí)間相同 var utcTime = len + offset; //得到時(shí)區(qū)標(biāo)準(zhǔn)時(shí)間 return new Date(utcTime + 3600000 * i); //得到UTC時(shí)間戳 //return new Date(utcTime).getTime(); //得到時(shí)區(qū)時(shí)間戳 // return new Date(utcTime + 3600000 * i).getTime(); } console.log("東八區(qū)-北京時(shí)間:" + getLocalTime(8)); //東八區(qū)-北京時(shí)間:Wed May 25 2022 10:10:32 GMT+0800 (中國(guó)標(biāo)準(zhǔn)時(shí)間) console.log("西八區(qū)-太平洋時(shí)間(美國(guó)和加拿大):" + getLocalTime(-8)); //西八區(qū)-太平洋時(shí)間(美國(guó)和加拿大):Tue May 24 2022 18:10:32 GMT+0800 (中國(guó)標(biāo)準(zhǔn)時(shí)間) // i:要得到那個(gè)時(shí)區(qū)的時(shí)間就傳幾,東區(qū)為正數(shù),西區(qū)為負(fù)數(shù)
總結(jié)
到此這篇關(guān)于JavaScript中幾種時(shí)間格式之間的簡(jiǎn)單轉(zhuǎn)換的文章就介紹到這了,更多相關(guān)JS時(shí)間格式轉(zhuǎn)換內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
使用coffeescript編寫node.js項(xiàng)目的方法匯總
Node.js 基于JavaScript編寫應(yīng)用,JavaScript是我的主要開發(fā)語(yǔ)言。CoffeeScript是編譯為JavaScript的編程語(yǔ)言。CoffeeScript是一個(gè)非常高階的語(yǔ)言,將JavaScript、Ruby和Python中我最愛的部分結(jié)合在了一起。小編給大家介紹下使用coffeescript編寫node.js項(xiàng)目的方法2015-08-08JS中通過slice()&substring()截取字符串前幾位的方法
在Javascript使用字符串中,我們不一定需要全部的字符串,這時(shí)就需要截取字符串,本文主要介紹js中截取字符串前幾位的兩種方法:1、使用slice() 方法;2、使用substring() 方法,本文通過示例代碼介紹的非常詳細(xì),需要的朋友參考下吧2023-12-12javascript輕量級(jí)模板引擎juicer使用指南
Juicer 是一個(gè)高效、輕量的前端 (Javascript) 模板引擎,使用 Juicer 可以是你的代碼實(shí)現(xiàn)數(shù)據(jù)和視圖模型的分離(MVC)。2014-06-06

關(guān)于promise和async用法以及區(qū)別詳解