unix時(shí)間戳轉(zhuǎn)換的方法詳解
小白對(duì)于將 unix 時(shí)間戳轉(zhuǎn)換為日期時(shí)間和使用日期時(shí)間轉(zhuǎn)換為 unix 時(shí)間戳,在項(xiàng)目中見(jiàn)到過(guò)很多,每次使用時(shí)不是用現(xiàn)有的方法轉(zhuǎn)換就是網(wǎng)上搜索方法。
小白見(jiàn)過(guò)各種轉(zhuǎn)換方式覺(jué)得moment庫(kù)很是方便,但是用法較多,所以小白決定整理一下。以后再遇到時(shí)間日期轉(zhuǎn)換可能手寫(xiě)代碼而省去翻看資料的時(shí)間。
vue中使用moment.js庫(kù)需要通過(guò) npm install moment
來(lái)安裝。
在使用時(shí)需要通過(guò) import moment from 'momennt'
來(lái)引入組件中。
1. 這里是一些常見(jiàn)的用法:
currentDate: moment().format('YYYY-MM-DD'), // 獲取當(dāng)前日期 currentTime: moment().format('HH:mm:ss'), // 獲取當(dāng)前時(shí)間 formattedDate: moment('2023-08-25').format('MMMM Do YYYY'), // 格式化日期 diffInDays: moment('2023-08-25').diff(moment(), 'days'), // 計(jì)算日期差異 isLeapYear: moment('2023-08-25').isLeapYear() // 檢查是否是閏年
下面開(kāi)始演示 日期和 Unix 時(shí)間戳 的轉(zhuǎn)換
1. 使用 moment 將日期轉(zhuǎn)換為Unix時(shí)間戳:
const dateInt = moment('2023-08-25').valueOf(); 1800000000000 //valueOf() 方法將 Moment 對(duì)象轉(zhuǎn)換為 Unix 時(shí)間戳 (自UTC時(shí)間 1970年 1月 1日零點(diǎn)以來(lái)的毫秒數(shù))
2. 使用 moment 將時(shí)間轉(zhuǎn)換為 Unix 時(shí)間戳,再轉(zhuǎn)換回時(shí)間
const unixTimestamp = moment('2023-08-25 17:56:00').unix(); // 轉(zhuǎn)換為 Unix 時(shí)間戳 const formattedDate = moment.unix(unixTimestamp).format('YYYY-MM-DD HH:mm:ss'); // 格式化日期時(shí)間 console.log(unixTimestamp); // 輸出:1671963360 console.log(formattedDate); // 輸出:2023-08-25 17:56:00
特別注意:unix()和valueOf()的區(qū)別,valueOf 獲取日期對(duì)象的毫秒級(jí)時(shí)間戳,unix 獲取日期對(duì)象的秒級(jí)時(shí)間戳。而 Unix 時(shí)間戳一般是秒級(jí)的。
moment 中還有一個(gè)處理時(shí)區(qū)的插件 tz,它允許我們?cè)诰唧w的時(shí)區(qū)進(jìn)行日期和時(shí)間的轉(zhuǎn)換和處理。
1. vue中使用 tz 需要安裝moment庫(kù) 和 moment-timezone 插件??梢允褂胣pm 或 yarn 進(jìn)行安裝 npm install moment moment-timezone
2. 在組件中使用時(shí),需要引入
import moment from 'moment'; import 'moment-timezone';
3. 下面是一些常見(jiàn)用法
// 獲取當(dāng)前時(shí)間,并將其轉(zhuǎn)換為指定時(shí)區(qū)的時(shí)間 const now = moment(); const nyTime = moment.tz(now, 'America/New_York'); // 使用指定時(shí)區(qū)創(chuàng)建一個(gè) Moment 對(duì)象 const parisTime = moment.tz('2023-08-31 12:00', 'Europe/Paris'); // 將時(shí)間從當(dāng)前時(shí)區(qū)轉(zhuǎn)換為目標(biāo)時(shí)區(qū) const londonTime = moment.tz('2023-08-31 12:00', 'Europe/London').tz('America/New_York'); // 獲取所有可用的時(shí)區(qū) const timezones = moment.tz.names(); // 獲取指定時(shí)區(qū)在當(dāng)前時(shí)間的偏移量(以分鐘為單位) const offset = moment.tz('America/New_York').utcOffset();
tz 還可以配合 format 一起使用:
moment.tz('2022-12-31 23:59:59', 'America/New_York').format('YYYY-MM-DD HH:mm:ss z') //或者 const time = '2022-12-31 23:59:59'; const tz = 'America/New_York'; const fmt = 'YYYY-MM-DD HH:mm:ss z'; const formattedDateTime = moment(time).tz(tz).format(fmt); //第二種方式為舊版本使用方式
雖然是一個(gè)小工具庫(kù),但是項(xiàng)目中使用率還挺高,所以小白覺(jué)得值得用心整理。整理的過(guò)程也是自己學(xué)習(xí)的過(guò)程,同時(shí)也能夠當(dāng)作筆記,在遺忘時(shí)再回來(lái)翻看。小白希望通過(guò)這次整理能夠完全掌握menent 庫(kù)的使用,以便在以后的項(xiàng)目,遇到處理時(shí)間日期格式時(shí),不需要查詢資料,能夠閉眼手寫(xiě)代碼,提高效率節(jié)省時(shí)間。
到此這篇關(guān)于unix時(shí)間戳轉(zhuǎn)換的方法詳解的文章就介紹到這了,更多相關(guān)unix時(shí)間戳內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Vue實(shí)現(xiàn)無(wú)限級(jí)樹(shù)形選擇器
這篇文章主要介紹了Vue實(shí)現(xiàn)無(wú)限級(jí)樹(shù)形選擇器,文章圍繞主題展開(kāi)詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的朋友可以參考一下2022-09-09vue項(xiàng)目中實(shí)現(xiàn)全局引入jquery
這篇文章主要介紹了vue項(xiàng)目中實(shí)現(xiàn)全局引入jquery方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-06-06vue如何判斷數(shù)組中的對(duì)象是否包含某個(gè)值
這篇文章主要介紹了vue如何判斷數(shù)組中的對(duì)象是否包含某個(gè)值,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-08-08vue.js學(xué)習(xí)筆記:如何加載本地json文件
這篇文章主要介紹了vue.js學(xué)習(xí)筆記:如何加載本地json文件,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧。2017-01-01vue3+elementplus前端生成圖片驗(yàn)證碼完整代碼舉例
在開(kāi)發(fā)過(guò)程中有時(shí)候需要使用圖片驗(yàn)證碼進(jìn)行增加安全強(qiáng)度,在點(diǎn)擊圖片時(shí)更新新的圖片驗(yàn)證碼,記錄此功能,以便后期使用,這篇文章主要給大家介紹了關(guān)于vue3+elementplus前端生成圖片驗(yàn)證碼的相關(guān)資料,需要的朋友可以參考下2024-03-03Vue+element自定義指令如何實(shí)現(xiàn)表格橫向拖拽
這篇文章主要介紹了Vue+element自定義指令如何實(shí)現(xiàn)表格橫向拖拽,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-10-10利用WebStorm創(chuàng)建一個(gè)Vue項(xiàng)目的完整步驟
WebStorm是一個(gè)非常適合學(xué)習(xí)和開(kāi)發(fā)Vue項(xiàng)目的集成開(kāi)發(fā)環(huán)境,下面這篇文章主要給大家介紹了關(guān)于利用WebStorm創(chuàng)建一個(gè)Vue項(xiàng)目的完整步驟,文中通過(guò)圖文介紹的非常詳細(xì),需要的朋友可以參考下2024-06-06