一、日期字符串转时间戳
// 获取当前时间戳(以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.youkuaiyun.com/js_admin/article/details/76973074