定义了四个用于格式化时间戳的函数,依赖于 dayjs 库。下面讲解每个函数的作用、参数和返回值。
1. formatUnixTimestamp
/**
* 格式化秒级时间戳
*
* @param timestamp - 秒级时间戳 Moment Cheng
* @param format - 格式化字符串,默认为 'YYYY-MM-DD HH:mm:ss'
*
* @returns 格式化后的日期时间字符串
*/
function formatUnixTimestamp(timestamp: number, format: string = "YYYY-MM-DD HH:mm:ss"): string {
if (timestamp === 0) {
return "--";
}
const date = dayjs.unix(timestamp);
return date.format(format);
}
- 功能:将秒级时间戳(从1970年1月1日0点0分0秒到指定时间的秒数)格式化为指定格式的日期时间字符串。
- 参数:
timestamp:秒级时间戳,类型为number。format:日期时间格式化字符串,默认为'YYYY-MM-DD HH:mm:ss'。可以根据需要传递其他格式化字符串。
- 返回值:格式化后的日期时间字符串。如果
timestamp为0,则返回"--"。
2. formatMillisecondTimestamp
/**
* 格式化毫秒级时间戳 Moment Cheng
*
* @param timestamp - 毫秒级时间戳
* @param format - 格式化字符串,默认为 'YYYY-MM-DD HH:mm:ss'
*
* @returns 格式化后的日期时间字符串
*/
function formatMillisecondTimestamp(timestamp: number, format: string = "YYYY-MM-DD HH:mm:ss"): string {
if (timestamp === 0) {
return "--";
}
const date = dayjs(timestamp);
return date.format(format);
}
- 功能:将毫秒级时间戳(从1970年1月1日0点0分0秒到指定时间的毫秒数)格式化为指定格式的日期时间字符串。
- 参数:
timestamp:毫秒级时间戳,类型为number。format:日期时间格式化字符串,默认为'YYYY-MM-DD HH:mm:ss'。可以根据需要传递其他格式化字符串。
- 返回值:格式化后的日期时间字符串。如果
timestamp为0,则返回"--"。
3. formatYMD
/**
* 格式化为日期(年月日)Moment Cheng
*
* @param timestamp - 秒级时间戳
* @param format - 格式化字符串,默认为 'YYYY-MM-DD'
*
* @returns 格式化后的日期时间字符串
*/
function formatYMD(timestamp: number, format: string = "YYYY-MM-DD"): string {
const date = dayjs.unix(timestamp);
return date.format(format);
}
- 功能:将秒级时间戳格式化为日期(年月日)。
- 参数:
timestamp:秒级时间戳,类型为number。format:日期格式化字符串,默认为'YYYY-MM-DD'。可以根据需要传递其他格式化字符串。
- 返回值:格式化后的日期字符串。
4. formatHMS
/**
* 格式化为时间(时分秒)Moment Cheng
*
* @param timestamp - 秒级时间戳
* @param format - 格式化字符串,默认为 'HH:mm:ss'
*
* @returns 格式化后的日期时间字符串
*/
function formatHMS(timestamp: number, format: string = " HH:mm:ss"): string {
const date = dayjs.unix(timestamp);
return date.format(format);
}
- 功能:将秒级时间戳格式化为时间(时分秒)。
- 参数:
timestamp:秒级时间戳,类型为number。format:时间格式化字符串,默认为'HH:mm:ss'。可以根据需要传递其他格式化字符串。
- 返回值:格式化后的时间字符串。
注意事项
dayjs库:这些函数依赖于dayjs库进行日期时间的处理。确保在使用这些函数之前已经安装并引入了dayjs。- 时间戳类型:
formatUnixTimestamp和formatYMD、formatHMS函数假设timestamp是秒级时间戳,而formatMillisecondTimestamp函数假设timestamp是毫秒级时间戳。确保传递给函数的时间戳与函数的预期类型相匹配。
这些函数可以帮助将时间戳转化为可读的日期时间格式,适用于日志记录、用户界面展示等场景。