1、将时间戳1719814598 转成这种时间2024/03/04 13:28 格式
// 转换成这种时间格式:2024/03/04 13:28
export function timestampToTime(timestamp: number) {
// 创建一个新的 Date 对象
const date = new Date(timestamp * 1000) // 时间戳需乘以 1000,因为 JavaScript 中时间戳是以毫秒为单位的
// 获取日期和时间
const year = date.getFullYear()
const month = (date.getMonth() + 1).toString().padStart(2, '0') // 月份是从 0 开始的,所以需要加 1
const day = date.getDate().toString().padStart(2, '0')
const hour = date.getHours().toString().padStart(2, '0')
const minute = date.getMinutes().toString().padStart(2, '0')
// 拼接成所需的格式
const formattedTime = `${year}/${month}/${day} ${hour}:${minute}`
return formattedTime
}
2、将Tue Jul 02 2024 00:00:00 GMT+0800 (GMT+08:00) 这种格式的时间格式转为时间戳
export function dateToTimestamp(dateString: string) {
// 创建一个新的 Date 对象
const date = new Date(dateString)
// 获取时间戳
const timestamp = date.getTime() / 1000 // 将毫秒转换为秒
return timestamp
}
3、HH:MM:SS格式(14:23:45)
export function getTimes(timestamp, type) {
const date = new Date(timestamp * 1000)
// 获取小时、分钟和秒
const hours = date.getHours().toString().padStart(2, '0')
const minutes = date.getMinutes().toString().padStart(2, '0')
const seconds = date.getSeconds().toString().padStart(2, '0')
// 拼接成HH:MM:SS格式
const formattedTime = `${hours}:${minutes}:${seconds}`
return formattedTime
}
4、时间戳转为时间字符串(D天H小时M分)。
export function secondsToDHMS(seconds) {
const days = Math.floor(seconds / (3600 * 24))
seconds %= 3600 * 24
const hours = Math.floor(seconds / 3600)
seconds %= 3600
const minutes = Math.floor(seconds / 60)
return `${days}天${hours}小时${minutes}分`
}
5、入参为最后到期时间,计算当前时间与到期时间戳之间的时间差,并以“D天H:M:S”格式返回。
export function formatTimeWithDays(timestamp) {
const date = new Date(timestamp * 1000)
const now = new Date()
const difference = date.getTime() - now.getTime()
const seconds = Math.floor((difference / 1000) % 60)
const minutes = Math.floor((difference / (1000 * 60)) % 60)
const hours = Math.floor((difference / (1000 * 60 * 60)) % 24)
const days = Math.floor(difference / (1000 * 60 * 60 * 24))
const formattedSeconds = seconds.toString().padStart(2, '0')
const formattedMinutes = minutes.toString().padStart(2, '0')
const formattedHours = hours.toString().padStart(2, '0')
return `${days}天${formattedHours}:${formattedMinutes}:${formattedSeconds}`
}
未完待续。。。。。