/**
* 时间戳转日期
* @param {Number} n 转换的时间戳
* @param {String} timeType 转换的格式
* @returns {String} 返回已转换的时间
*/const datecToDate =(n, timeType ='yyyy/MM/dd hh:mm:ss')=>{
let date =newDate(Number(n)),Y= date.getFullYear(),M= date.getMonth()+1,D= date.getDate(),
h = date.getHours(),
m = date.getMinutes(),
s = date.getSeconds(),
res =''const regPx = timeType.match(/[^\w]/ig)const regY =/y{4}/i.test(timeType)const regM1 =/M{1}/.test(timeType)const regM2 =/M{2}/.test(timeType)const regD1 =/d{1}/i.test(timeType)const regD2 =/d{2}/i.test(timeType)const regH1 =/h{1}/i.test(timeType)const regH2 =/h{2}/i.test(timeType)const regMm1 =/m{1}/.test(timeType)const regMm2 =/m{2}/.test(timeType)const regSs1 =/s{1}/i.test(timeType)const regSs2 =/s{2}/i.test(timeType)if(regY){
res +=Y}if(regM2){
M<10?M='0'+M:M
res += regPx[0]+M}elseif(regM1){
res += regPx[0]+M}if(regD2){
D<10?D='0'+D:D
res += regPx[1]+D}elseif(regD1){
res += regPx[1]+D}if(regH2){
h <10? h ='0'+ h : h
res += regPx[2]+ h
}elseif(regH1){
res += regPx[2]+ h
}if(regMm2){
m <10? m ='0'+ m : m
res += regPx[3]+ m
}elseif(regMm1){
res += regPx[3]+ m
}if(regSs2){
s <10? s ='0'+ s : s
res += regPx[4]+ s
}elseif(regSs1){
res += regPx[4]+ s
}return res
}
console.log(datecToDate(1683128095))// 1970/01/20 19:32:08
计算2时间戳的间隔
/**
* 计算2时间戳的间隔 | 获取当前时间戳 -> new Date().getTime()
* @param {Number} date1 时间戳1
* @param {Number} date2 时间戳1
* @returns {Object{s,m,h,d}} 返回的2时间戳的间隔 s-秒 m-分钟 h-小时 d-天
*/constdateCha=(date1, date2)=>{
const d1 =Number(date1)const d2 =Number(date2)const minDate = Math.min(d1, d2)const maxDate = Math.max(d1, d2)// 除1000转毫秒const cha =parseInt((maxDate - minDate)/1000)const s =parseInt(cha %60)//秒const m =parseInt(cha /60%60)//分const h =parseInt(cha /60/60%24)//小时const d =parseInt(cha /60/60/24)//天return{
s, m, h, d
}}// 1683128095 1970-01-20 19:32:08// 1300133704265 2011-03-15 04:15:04
console.log(dateCha(1683128095,1300133704265))// {s: 56, m: 42, h: 8, d: 15028}