時間相減和時間轉換

风雪中de冲破發表於2024-08-29

1. 現在時間到開始時間的時間差(兩個時間變成時間戳然後轉化成時間)

const transformTime = (date) => {
var date1=new Date(); //開始時間 
var date2=new Date('2024-08-29 17:11:12');  //結束時間 
var date3=date2.getTime()-date1.getTime() //時間差的毫秒數 
//計算出相差天數 
var days=Math.floor(date3/(24*3600*1000)) 
//計算出小時數 
var leave1=date3%(24*3600*1000)  //計算天數後剩餘的毫秒數 
var hours=Math.floor(leave1/(3600*1000)) 
//計算相差分鐘數 
var leave2=leave1%(3600*1000)    //計算小時數後剩餘的毫秒數 
var minutes=Math.floor(leave2/(60*1000)) 
//計算相差秒數 
var leave3=leave2%(60*1000)   //計算分鐘數後剩餘的毫秒數 
var seconds=Math.round(leave3/1000) 
alert(" 相差 "+days+"天 "+hours+"小時 "+minutes+" 分鐘"+seconds+" 秒")

}

2.時間轉化年月日

export const transformTimeTwo = (date: string | number | Date, dateed: string) => {
var d = '',
m = '',
day = '',
datetime = '',
h = '',
min = '',
s = ''
// dateFormat;
// dateFormat = date.replace(/\-/g, '/')
// dateFormat = date.replace(/\//g, '-')
// d = new Date(dateFormat)
// console.log(1111222);
// console.log(date);

d = new Date(date)
m = d.getMonth() + 1 < 10 ? '0' + (d.getMonth() + 1) : d.getMonth() + 1
day = d.getDate() < 10 ? '0' + d.getDate() : d.getDate()
h = d.getHours() < 10 ? '0' + d.getHours() : d.getHours()
min = d.getMinutes() < 10 ? '0' + d.getMinutes() : d.getMinutes()
s = d.getSeconds() < 10 ? '0' + d.getSeconds() : d.getSeconds()
if (dateed == 'date') {
datetime = d.getFullYear() + '-' + m + '-' + day
return datetime
} else if (dateed == 'minutes') {
datetime = d.getFullYear() + '-' + m + '-' + day + ' ' + h + ':' + min
return datetime
} else if (dateed == 'minutesdd') {
datetime = d.getFullYear() + '/' + m + '/' + day + ' ' + h + ':' + min
return datetime
} else if (dateed == 'minutesTwo') {
datetime = h + ':' + min
return datetime
} else {
datetime = d.getFullYear() + '-' + m + '-' + day + ' ' + h + ':' + min + ':' + s
return datetime
}
}

相關文章