隨著互聯網的不斷發展,我們的生活已經離不開網絡。而網絡上的應用也越來越普及,如網頁、APP等。在我們的網絡應用中,時間戳的使用頻率也越來越高。因此,在日常開發中,對于javascript時間戳的轉換操作,我們必須掌握。
那么,什么是時間戳?通俗點兒說,時間戳就是一個表示時間的數字,它是從1970年1月1日開始到當前時間的總秒數。javascript中內置的Date對象也支持時間戳的使用。
var timestamp = new Date().getTime(); //獲取當前時間戳
通過時間戳,我們能夠比較方便地表示時間。如下代碼示例中的timestamp就是一個時間戳。
var timestamp = 1633099046568; console.log(new Date(timestamp)); //輸出Thu Sep 30 2021 15:04:06 GMT+0800 (中國標準時間)
但我們在開發中,常常需要將時間戳轉換為指定格式的時間字符串,或將時間字符串轉換為時間戳。下面,我們就來分別了解一下這兩種轉換方式。
1. 將時間戳轉換為指定格式的時間字符串
時間字符串的格式我們可以自定義,但一般遵循某種標準。如日常所見的年月日時分秒格式:YYYY-MM-DD HH:mm:ss。
var timestamp = 1633099046568; var date = new Date(timestamp); var year = date.getFullYear(); var month = date.getMonth() + 1< 10 ? '0' + (date.getMonth() + 1) : date.getMonth() + 1; var day = date.getDate()< 10 ? '0' + date.getDate() : date.getDate(); var hour = date.getHours()< 10 ? '0' + date.getHours() : date.getHours(); var minute = date.getMinutes()< 10 ? '0' + date.getMinutes() : date.getMinutes(); var second = date.getSeconds()< 10 ? '0' + date.getSeconds() : date.getSeconds(); var timeString = year + '-' + month + '-' + day + ' ' + hour + ':' + minute + ':' + second; console.log(timeString); //輸出2021-09-30 15:04:06
2. 將時間字符串轉換為時間戳
將時間字符串轉換為時間戳同樣需要使用Date對象。在將時間字符串傳入Date構造函數中后,通過getTime()方法獲取相應的時間戳。
var dateString = '2021-09-30 15:04:06'; var timestamp = new Date(dateString).getTime(); console.log(timestamp); //輸出1633099446000
如上所述,javascript中時間戳與時間字符串之間的轉換十分靈活,而這種靈活性也是開發者需要掌握的技能之一。如果熟練掌握了這些技能,我們能夠在開發過程中更加方便地操作時間。