exportclassOpt{
yy:string=''
mm:string=''
dd:string=''HH:string=''MM:string=''SS:string=''}exportfunctionformatDate(timestamp:number,format ='yyyy-mm-dd'){let res =""try{//转化为日期对象const date =newDate(timestamp)//定义日期字段const opt:Opt ={
yy:date.getFullYear().toString(),
mm:(date.getMonth()+1).toString(),
dd:date.getDate().toString(),HH:date.getHours().toString(),MM:date.getMinutes().toString(),SS:date.getSeconds().toString(),}const regKeys:string[]=['y+','m+','d+','H+','M+','S+'];for(let i =0;i<regKeys.length;i++){const regKey = regKeys[i];//构造正则表达是对象const reg =newRegExp(regKey);let ret = reg.exec(format);if(ret){switch(regKey){case'y+':
format = format.replace(reg,ret.length!==1?opt.yy:opt.yy.padStart(ret.length))case'm+':
format = format.replace(reg,ret.length!==1?opt.mm:opt.mm.padStart(2,"0"))//padStart长度不够2时填充0case'd+':
format = format.replace(reg,ret.length!==1?opt.dd:opt.dd.padStart(2,"0"))case'H+':
format = format.replace(reg,ret.length!==1?opt.HH:opt.HH.padStart(2,"0"))case'M+':
format = format.replace(reg,ret.length!==1?opt.MM:opt.MM.padStart(2,"0"))case'S+':
format = format.replace(reg,ret.length!==1?opt.SS:opt.SS.padStart(2,"0"))}}}
res = format
}catch(err){console.log("ERROR formatDate")}return res
}