2025-08-08 18:55:18 +08:00

29 lines
762 B
TypeScript

/**
* 将秒数转换为更友好的时间格式
* @param seconds 总秒数
* @returns 格式化后的时间字符串
*/
export function formatDuration(seconds: number): { s: number, m: number, h: number } {
if (seconds < 60) {
return { s: seconds, m: 0, h: 0 };
}
const minutes = Math.floor(seconds / 60);
const remainingSeconds = seconds % 60;
if (minutes < 60) {
return remainingSeconds > 0
? { s: remainingSeconds, m: minutes, h: 0 }
: { s: 0, m: minutes, h: 0 };
}
const hours = Math.floor(minutes / 60);
const remainingMinutes = minutes % 60;
if (remainingMinutes === 0) {
return { s: 0, m: 0, h: hours };
}
return { s: seconds, m: minutes, h: hours };
}