您好,登錄后才能下訂單哦!
本文實例講述了JavaScript時間與時間戳的轉換操作。分享給大家供大家參考,具體如下:
一、時間轉時間戳:javascript獲得時間戳的方法有五種,都是通過實例化時間對象 new Date()
來進一步獲取當前的時間戳
1.
var timestamp1 = Date.parse(new Date()); // 結果:1544151187000 不推薦這種辦法,毫秒級別的數值被轉化為000 console.log(timestamp1);
2.
var timestamp2 = (new Date()).valueOf(); // 結果:1544151187152 通過valueOf()函數返回指定對象的原始值獲得準確的時間戳值 console.log(timestamp2);
3.
var timestamp3 = new Date().getTime(); // 結果:1544151187152 ,通過原型方法直接獲得當前時間的毫秒值,準確 console.log(timestamp3);
4.
var timetamp4 = Number(new Date()) ; //結果:1544151187152 ,將時間轉化為一個number類型的數值,即時間戳 console.log(timetamp4);
5.ES5給Date提供了一種獲取時間戳的新特性
var timetamp5 = Date.now(); //結果:1544151187152 console.log(timetamp5);
使用在線HTML/CSS/JavaScript代碼運行工具:http://tools.jb51.net/code/HtmlJsRun測試,打印結果如下:
二、時間戳轉時間
var timestamp4 = new Date(1544151250236);//直接用 new Date(時間戳) 格式轉化獲得當前時間 console.log(timestamp4); console.log(timestamp4.toLocaleDateString().replace(/\//g, "-") + " " + timestamp4.toTimeString().substr(0, 8)); //再利用拼接正則等手段轉化為yyyy-MM-dd hh:mm:ss 格式
使用在線HTML/CSS/JavaScript代碼運行工具:http://tools.jb51.net/code/HtmlJsRun測試效果如下:
不過這樣轉換在某些瀏覽器上會出現不理想的效果,因為toLocaleDateString()
方法是因瀏覽器而異的,比如 IE為2018年12月7日 10:54:10 格式 搜狗為Fri Dec 07 2018 10:54:10
可以通過分別獲取時間的年月日進行拼接,比如:
function getdate() { var now = new Date(), y = now.getFullYear(), m = ("0" + (now.getMonth() + 1)).slice(-2), d = ("0" + now.getDate()).slice(-2); return y + "-" + m + "-" + d + " " + now.toTimeString().substr(0, 8); }
PS:這里再為大家推薦幾款時間及日期相關工具供大家參考使用:
在線日期/天數計算器:
http://tools.jb51.net/jisuanqi/date_jisuanqi
在線日期計算器/相差天數計算器:
http://tools.jb51.net/jisuanqi/datecalc
在線日期天數差計算器:
http://tools.jb51.net/jisuanqi/onlinedatejsq
Unix時間戳(timestamp)轉換工具:
http://tools.jb51.net/code/unixtime
更多關于JavaScript相關內容感興趣的讀者可查看本站專題:《JavaScript時間與日期操作技巧總結》、《JavaScript查找算法技巧總結》、《JavaScript錯誤與調試技巧總結》、《JavaScript數據結構與算法技巧總結》、《JavaScript遍歷算法與技巧總結》及《JavaScript數學運算用法總結》
希望本文所述對大家JavaScript程序設計有所幫助。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。