一、日期字符串转时间戳
// 获取当前时间戳(以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