1.时间戳转换成日期时间格式 // 1395849600000 => 2014-03-27 00:00:00
1-最直接易读的转换
var oldTime = 1395849600000 ; // 2014-03-27 00:00:00
function formatDateTime(date) {
var time = new Date(date); // 实例化时间戳 time.后面的是时间获取转换的对应方法
var hour = time.getHours();
var minute = time.getMinutes();
var second = time.getSeconds();
var year = time.getFullYear()
var month = time.getMonth();
var date = time.getDate();
month = month + 1; // 月份要多加一个月(不知道就自行google)
if( month < 10){ month = "0" + month}; // if判断是少于两位数就补0
if( date < 10){ date= "0" + date };
if( hour < 10){ hour= "0" + hour };
if( minute < 10){ minute= "0" + minute};
if( second < 10){ second= "0" + second};
return year + "-" + month + "-" + date + " " + hour + ":" + minute + ":" +second;
};
var formatTime = formatDateTime(oldTime); // 调用formatDateTime函数并赋值给formatTime
console.log(oldTime,"=>",formatTime)
但是,上面的方法看起来有点多,我想继续改改吧。
let oldTime = 1395849600000 ; // 2014-03-27 00:00:00
function formatDateTime(date) {
let t= new Date(date); // 实例化时间戳 time.后面的是时间获取转换的对应方法
let y = t.getFullYear();
let m = t.getMonth()+1; // 月份要多加一个月(不知道就自行google)
let d = t.getDate();
let h = t.getHours();
let min = t.getMinutes();
let s = t.getSeconds();
// 返回给外面调用它的地方(需要的格式也在return后面拼装)
return y + "-" + (m<10?m="0"+m:m) +"-" + (d<10?d="0"+d:d) + " " +
(h<10?h="0"+h:h) + ":" + (min<10?min="0"+min:min) + ":" + (s<10?s="0"+s:s);
};
let formatTime = formatDateTime(oldTime); // 调用formatDateTime函数并赋值给formatTime
console.log(oldTime,"=>",formatTime)
这样return后面就写着很长了(虽然+号可以换行),看起来怪怪的,那就继续改改吧。
let oldTime = 1395849600000 ; // 2014-03-27 00:00:00
function formatDateTime(date) {
let t = new Date(date); // 实例化时间戳 time.后面的是时间获取转换的对应方法
let y = t.getFullYear();
let m = t.getMonth()+1;
m = m<10?"0"+m:m;
let d = t.getDate()<10?"0"+t.getDate():t.getDate();
let h = t.getHours()<10?"0"+t.getHours():t.getHours();
let min = t.getMinutes()<10?"0"+t.getMinutes():t.getMinutes();
let s = t.getSeconds()<10?"0"+t.getSeconds():t.getSeconds();
return y+"-"+m+"-"+d+" "+h+":"+min+":"+s; // 返回给外面调用它的地方
};
let formatTime = formatDateTime(oldTime); // 调用formatDateTime函数并赋值给formatTime
console.log(oldTime,"=>",formatTime)
如果你的时间格式不一定要两位数值的,可以这样写,简单。
function formatDateTime(date) {
let t = new Date(date); // 实例化时间戳 time.后面的是时间获取转换的对应方法
return t.getFullYear()+"-"+(t.getMonth()+1)+"-"+t.getDate()+" "+t.getHours()+":"+t.getMinutes()+":"+t.getSeconds(); // 返回给外面调用它的地方
};
console.log(formatDateTime(1395849600000))
你还有什么更好的方法或者建议,欢迎留言