JavaScript時間戳與時間日期間相互轉(zhuǎn)換
今天在工作中要將獲取到的時間轉(zhuǎn)換為時間戳,一時間竟不知道怎么用,于是不得不去查詢資料,這里特地做個筆記。
1、將日期轉(zhuǎn)換為時間戳。
要將日期轉(zhuǎn)換為時間戳,首先得先獲取到日期,這里可以直接指定日期,或者是使用當(dāng)前日期。要獲取當(dāng)前日期,我們可以使用new Date()來獲取。直接上代碼。
// (1)、將當(dāng)前日期轉(zhuǎn)換為時間戳。 var now = new Date(); console.log(now.getTime()) // 將當(dāng)前日期轉(zhuǎn)換為時間戳,getTime()方法可返回距1970年1月1日之間的毫秒數(shù)。 // (2)、將指定日期轉(zhuǎn)換為時間戳。 var t = "2017-12-08 20:5:30"; // 月、日、時、分、秒如果不滿兩位數(shù)可不帶0. var T = new Date(t); // 將指定日期轉(zhuǎn)換為標(biāo)準(zhǔn)日期格式。Fri Dec 08 2017 20:05:30 GMT+0800 (中國標(biāo)準(zhǔn)時間) console.log(T.getTime()) // 將轉(zhuǎn)換后的標(biāo)準(zhǔn)日期轉(zhuǎn)換為時間戳。
2、將時間戳轉(zhuǎn)換為日期。
var t = 787986456465; // 當(dāng)參數(shù)為數(shù)字的時候,那么這個參數(shù)就是時間戳,被視為毫秒,創(chuàng)建一個距離1970年1月一日指定毫秒的時間日期對象。 console.log(new Date(t)) // Wed Dec 21 1994 13:07:36 GMT+0800 (中國標(biāo)準(zhǔn)時間) var t2 = "2017-5-8 12:50:30"; console.log(new Date(t2)) // Mon May 08 2017 12:50:30 GMT+0800 (中國標(biāo)準(zhǔn)時間) var t3 = "2017-10-1"; console.log(new Date(t3)) // Sun Oct 01 2017 00:00:00 GMT+0800 (中國標(biāo)準(zhǔn)時間) 不設(shè)定時分秒,則默認(rèn)轉(zhuǎn)換為00:00:00
PS:下面看下javascript時間戳和日期字符串相互轉(zhuǎn)換
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<script type="text/javascript">
// 獲取當(dāng)前時間戳(以s為單位)
var timestamp = Date.parse(new Date());
timestamp = timestamp / 1000;
//當(dāng)前時間戳為:1403149534
console.log("當(dāng)前時間戳為:" + timestamp);
// 獲取某個時間格式的時間戳
var stringTime = "2014-07-10 10:21:12";
var timestamp2 = Date.parse(new Date(stringTime));
timestamp2 = timestamp2 / 1000;
//2014-07-10 10:21:12的時間戳為:1404958872
console.log(stringTime + "的時間戳為:" + timestamp2);
// 將當(dāng)前時間換成時間格式字符串
var timestamp3 = 1403058804;
var newDate = new Date();
newDate.setTime(timestamp3 * 1000);
// Wed Jun 18 2014
console.log(newDate.toDateString());
// Wed, 18 Jun 2014 02:33:24 GMT
console.log(newDate.toGMTString());
// 2014-06-18T02:33:24.000Z
console.log(newDate.toISOString());
// 2014-06-18T02:33:24.000Z
console.log(newDate.toJSON());
// 2014年6月18日
console.log(newDate.toLocaleDateString());
// 2014年6月18日 上午10:33:24
console.log(newDate.toLocaleString());
// 上午10:33:24
console.log(newDate.toLocaleTimeString());
// Wed Jun 18 2014 10:33:24 GMT+0800 (中國標(biāo)準(zhǔn)時間)
console.log(newDate.toString());
// 10:33:24 GMT+0800 (中國標(biāo)準(zhǔn)時間)
console.log(newDate.toTimeString());
// Wed, 18 Jun 2014 02:33:24 GMT
console.log(newDate.toUTCString());
Date.prototype.format = function(format) {
var date = {
"M+": this.getMonth() + 1,
"d+": this.getDate(),
"h+": this.getHours(),
"m+": this.getMinutes(),
"s+": this.getSeconds(),
"q+": Math.floor((this.getMonth() + 3) / 3),
"S+": this.getMilliseconds()
};
if (/(y+)/i.test(format)) {
format = format.replace(RegExp.$1, (this.getFullYear() + '').substr(4 - RegExp.$1.length));
}
for (var k in date) {
if (new RegExp("(" + k + ")").test(format)) {
format = format.replace(RegExp.$1, RegExp.$1.length == 1
? date[k] : ("00" + date[k]).substr(("" + date[k]).length));
}
}
return format;
}
console.log(newDate.format('yyyy-MM-dd h:m:s'));
</script>
后面一種直接是設(shè)置prototype來做格式的轉(zhuǎn)換。
總結(jié)
以上所述是小編給大家介紹的JavaScript時間戳與時間日期間相互轉(zhuǎn)換,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
相關(guān)文章
JS中字符問題(二進(jìn)制/十進(jìn)制/十六進(jìn)制及ASCII碼之間的轉(zhuǎn)換)
對于js的進(jìn)制轉(zhuǎn)換的一些方法分析2008-11-11
typescript使用 ?. ?? ??= 運(yùn)算符的方法步驟
本文主要介紹了typescript使用 ?. ?? ??= 運(yùn)算符的方法步驟,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2024-01-01
JS 動態(tài)加載js文件和css文件 同步/異步的兩種簡單方式
下面小編就為大家?guī)硪黄狫S 動態(tài)加載js文件和css文件 同步/異步的兩種簡單方式。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2016-09-09

