示例:
console.log('时转秒:','1时---',hoursToSeconds(1),'秒')
console.log('秒转时:','3600秒---',secondsToHours(3600),'时')
console.log('分转秒:','10分---',minuteToSecond(10),'秒')
console.log('秒转分:','600秒---',secondsToMinutes(600),'分')
console.log('分转时分:','80分---',convertMinutes(80))
console.log('年月日时分秒转秒:','2025-06-24 15:01:13 ---',datetimeToSeconds('2025-06-24 15:01:13'))
console.log('秒转年月日时分秒 :','1750748473 ---',formatToDateTime('1750748473'))
console.log('年月日时分转分:','2025-06-24 15:01 ---',datetimeToMinutes('2025-06-24 15:01'))
console.log('分转年月日时分 :','29179141 ---',formatMinutesToDateTime('29179141'))
结果:
封装完整代码
可单独放到 ts文件中
/**** 小时(小数|整数)转化为秒 start ****/
export function hoursToSeconds(hours) {
if (isNaN(hours)) return 0
return Math.floor(hours * 3600)
}
/**** 分(小数|整数)转化为秒 start ****/
export function minuteToSecond(minute) {
return minute * 60;
}
/**** 秒 转化为 小时 start ****/
export function secondsToHours(seconds) {
return parseFloat((seconds / 3600).toFixed(2))
}
/**** 秒 转化为 分 start ****/
export function secondsToMinutes(seconds) {
return seconds / 60;
}
//分钟转化为 时分
export function convertMinutes(time) {
const hours = Math.floor(time / 60);
const minutes = time % 60;
let result = "";
if (hours > 0) {
result += `${hours}时`;
}
if (minutes > 0 || hours === 0) {
result += `${minutes}分`;
}
return time === 0 ? "0" : result;
};
//年月日 时分秒 转化为秒
export function datetimeToSeconds(datetimeStr) {
const formattedStr = datetimeStr.length <= 16
? `${datetimeStr}:00`
: datetimeStr;
const targetDate = new Date(formattedStr);
return Math.floor(targetDate.getTime() / 1000);
}
//秒 转化为 年月日时分秒
export const formatToDateTime = (seconds: number) => {
return dayjs(seconds * 1000).format('YYYY-MM-DD HH:mm:ss');
};
// 将年月日时分转换为分钟数'YYYY-MM-DD HH:mm'
export function datetimeToMinutes(datetimeStr) {
const [datePart, timePart] = datetimeStr.split(' ');
const [year, month, day] = datePart.split('-').map(Number);
const [hours, minutes] = timePart.split(':').map(Number);
const date = new Date(year, month - 1, day, hours, minutes);
return date.getTime() / (1000 * 60); // 毫秒转分钟
}
//分 转化为 年月日 时分
export const formatMinutesToDateTime = (minutes) => {
return dayjs(minutes * 60000).format('YYYY-MM-DD HH:mm');
};
1213

被折叠的 条评论
为什么被折叠?



