js 时间戳转换为‘yyyy-MM-dd hh:mm’格式(es6语法)

时间:2023-08-21 22:33:52
js 时间戳转换为‘yyyy-MM-dd hh:mm’格式(es6语法)
function formatDate(date,fmt) {
if(/(y+)/.test(fmt)){
fmt = fmt.replace(RegExp.$1,(date.getFullYear()+'').substr(4-RegExp.$1.length));
}
let o = {
'M+':date.getMonth() + 1,
'd+':date.getDate(),
'h+':date.getHours(),
'm+':date.getMinutes(),
's+':date.getSeconds()
}; // 遍历这个对象
for(let k in o){
if(new RegExp(`(${k})`).test(fmt)){
// console.log(`${k}`)
console.log(RegExp.$1)
let str = o[k] + '';
fmt = fmt.replace(RegExp.$1,(RegExp.$1.length===1)?str:padLeftZero(str));
}
}
return fmt;
}; function padLeftZero(str) {
return ('00'+str).substr(str.length);
}

let TimeNow = 1514374627*1000
let newTime = new Date(TimeNow)

formatDate(newTime,'yyyy-MM-dd hh:mm')   //2017-12-27 19:37

function formatDate(date, fmt = 'yyyy-MM-dd') {
if (typeof (date) === 'number') {
date = new Date(date)
}
var o = {
"M+": date.getMonth() + 1, //月份
"d+": date.getDate(), //日
"h+": date.getHours(), //小时
"m+": date.getMinutes(), //分
"s+": date.getSeconds(), //秒
"q+": Math.floor((date.getMonth() + 3) / 3), //季度
"S": date.getMilliseconds() //毫秒
}
if (/(y+)/.test(fmt)) fmt = fmt.replace(RegExp.$1, (date.getFullYear() + "").substr(4 - RegExp.$1.length))
for (var k in o)
if (new RegExp("(" + k + ")").test(fmt))
fmt = fmt.replace(RegExp.$1, (RegExp.$1.length == 1) ? (o[k]) : (("00" + o[k]).substr(("" + o[k]).length)))
return fmt
}