javascript時間戳和日期字串相互轉換程式碼
阿新 • • 發佈:2018-11-04
一、日期字串轉時間戳
// 獲取當前時間戳(以s為單位) // 第一種方式 var timestamps = +new Date(); timestamps = timestamps / 1000; // 第二種方式 var timestamp = Date.parse(new Date()); timestamp = timestamp / 1000; // 第三種方式 var date = new Date("2014-07-10 10:21:12"); //時間物件 var str = date.getTime(); //轉換成時間戳 str = str / 1000; // 獲取某個時間格式的時間戳 var stringTime = "2014-07-10 10:21:12"; var timestamp2 = Date.parse(new Date(stringTime)); timestamp2 = timestamp2 / 1000;
二、時間戳轉日期字串
// 第一種方式 原生的方式 但是不能修改 var timestamp3 = 1403058804; var newDate = new Date(); newDate.setTime(timestamp3 * 1000); console.log(newDate.toLocaleDateString()); // 2014年6月18日 console.log(newDate.toLocaleString()); // 2014年6月18日 上午10:33:24 console.log(newDate.toLocaleTimeString()); // 上午10:33:24 // 第二種方式:給日期物件原型新增一個方法 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')); // 第三種方式:函式處理 function formatDate(now) { var year = now.getYear(); var month = now.getMonth() + 1; var date = now.getDate(); var hour = now.getHours(); var minute = now.getMinutes(); var second = now.getSeconds(); return year + "-" + month + "-" + date + " " + hour + ":" + minute + ":" + second; } var d = new Date(1368360620000); console.log(formatDate(d));
原文地址:https://blog.csdn.net/js_admin/article/details/76973074