js时间与时间戳的转换
时间转换为时间戳:包含精确到秒和到毫秒
1.通过valueOf()取得原始对象的原始值获取时间,精确到毫秒
var a=(new Date()).valueOf();//a=1553080008132
2.通过getTime()原型方法直接获取时间,精确到毫秒
var a=(new Date()).getTime();//a=1553080009451
3.通过Number即将时间转换为数值获取时间,精确到毫秒
var a=Number(new Date());//a=1553080016161
4.通过Date.parse()方法,精确到秒
var a=Date.parse(new Date());//a=1553080041000
时间戳转换为时间
1.通过传统的方法,将时间戳转换为时间,通过获取年月日等进行组合
function timeChange(time) {
var date = new Date(time);//时间戳为10位需*1000,时间戳为13位的话不需乘1000
var Y = date.getFullYear() + '-';
var M = (date.getMonth()+1 < 10 ? '0'+(date.getMonth()+1) : date.getMonth()+1) + '-';
var D = date.getDate() + ' ';
var h = date.getHours() + ':';
var m = date.getMinutes() < 10 ? '0'+date.getMinutes() + ':' : date.getMinutes() + ':';
var s = date.getSeconds();
return Y+M+D+h+m+s;
}
timeChange(1553080556000); //2019-03-20 19:15:56
2.通过toLocaleDateString()、toTimeString(),借助正则表达式获取 和截取转换,前者转换为年/月/日, 后者转换为时分秒
var a=new Date(1553080016161);
a.toLocaleDateString() ;// 2019/3/20
var a=new Date(1553080016161);
a.toTimeString() ;// 19:06:56 GMT+0800 (中国标准时间)
var a=new Date(1553080016161);
a.toLocaleDateString().replace(/\//g, "-") + " " + a.toTimeString().substr(0, 8);// 2019-3-20