时间戳与时间转换总结

2,340 阅读1分钟

获取时间戳

  1. 精确到秒
var timestamp = Date.parse(new Date())/1000;
  1. 精确到毫秒
var timestamp = (new Date()).valueOf();

var timestamp = new Date().getTime();

日期转时间戳

function toTimestamp(time){
    return Date.parse(new Date(time.replace(/-/g, '/')))/1000;  
}

时间戳转化为日期

function formatDate(time,format='YY-MM-DD hh:mm:ss'){
	var date = new Date(time);
	var year = date.getFullYear(),
		month = date.getMonth()+1,
		day = date.getDate(),
		hour = date.getHours(),
		min = date.getMinutes(),
		sec = date.getSeconds();
	var preArr = Array.apply(null,Array(10)).map(function(elem, index) {
		return '0'+index;
	});
	var newTime = format.replace(/YY/g,year)
						.replace(/MM/g,preArr[month]||month)
						.replace(/DD/g,preArr[day]||day)
						.replace(/hh/g,preArr[hour]||hour)
						.replace(/mm/g,preArr[min]||min)
						.replace(/ss/g,preArr[sec]||sec);
	return newTime;			
}

字符串格式转换

  • YYYY-MM-DD hh:mm:ss --> MM月DD日 hh:mm
function transformDate(time,format='MM月DD日 hh:mm'){
	var year = time.substr(2, 2),
		month = time.substr(5, 2),
		day = time.substr(8, 2),
		hour = time.substr(11, 2),
		min = time.substr(14, 2),
		sec = time.substr(17, 2);
	var newTime = format.replace(/YY/g,year)
						.replace(/MM/g,month)
						.replace(/DD/g,day)
						.replace(/hh/g,hour)
						.replace(/mm/g,min)
						.replace(/ss/g,sec);
	return newTime;			
}