格式化日期时间方法总结

文章目录

一、格式化时间(年月日时分秒)
javascript 复制代码
/**
 * 日期时间格式化 年月日时分秒
 * @param {string} dateTime
 */
export function dateTimeFormatting(dateTime) {
	if (dateTime.toString().length == 10) {
		dateTime = dateTime * 1000
	}
	let date = new Date(dateTime || '')
	return date.getFullYear() + '-' + (date.getMonth() + 1 < 10 ? '0' + (date.getMonth() + 1) : date.getMonth() + 1) +
		'-' + (date.getDate() < 10 ? '0' + date.getDate() : date.getDate()) + ' ' +
		(date.getHours() < 10 ? '0' + date.getHours() : date.getHours()) + ':' + (date.getMinutes() < 10 ? '0' + date
			.getMinutes() : date.getMinutes()) + ':' + (date.getSeconds() < 10 ? '0' + date.getSeconds() : date.getSeconds())
}
// 使用
// dateTimeFormatting(new Date());
// dateTimeFormatting(1719477463); // 2024-06-27 16:37:43
// dateTimeFormatting(1719477463000); // 2024-06-27 16:37:43
二、格式化时间(年月日)
javascript 复制代码
/**
 * 日期格式化 年月日
 * @param {*} dateTime 
 */
export function dateFormatting(dateTime, symbol) {
	let date = new Date(dateTime || '')
	let symbols = symbol || '-'
	return date.getFullYear() + (symbols == 'character' ? '年' : symbols) + (date.getMonth() + 1 < 10 ? '0' + (date
			.getMonth() + 1) : date.getMonth() + 1) + (symbols == 'character' ? '月' : symbols) +
		(date.getDate() < 10 ? '0' + date.getDate() : date.getDate()) + (symbols == 'character' ? '日' : '')
}
// 使用
// dateFormatting(new Date());
// dateFormatting(1719477463); // 2024-06-27
// dateFormatting(1719477463000); // 2024-06-27
三、日期格式化(获取年份)
javascript 复制代码
/**
 * 日期格式化 获取年份
 * @param {*} dateTime 
 */
export function getYear(dateTime) {
	let date = new Date(dateTime || '')
	return date.getFullYear()
}
// 使用
// getYear(new Date());
// getYear(1719477463); // 2024
// getYear(1719477463000); // 2024
四、格式化时间(月日)
javascript 复制代码
/**
 * 日期格式化 月日格式化
 * @param {*} dateTime 
 */ 
export function monthDayFormatting(dateTime, symbol) {
	let date = new Date(dateTime || '')
	let symbols = symbol || '-'
	return (date.getMonth() + 1 < 10 ? '0' + (date.getMonth() + 1) : date.getMonth() + 1) + (symbols == 'character' ?
		'月' : symbols) + (date.getDate() < 10 ? '0' + date.getDate() : date.getDate()) + (symbols == 'character' ? '日' :
		'')
}
// 使用
// monthDayFormatting(new Date());
// monthDayFormatting(1719477463); // 06-27
// monthDayFormatting(1719477463000); // 06-27
五、格式化时间(时分秒)
javascript 复制代码
/**
 * 时间格式化 时分秒
 * @param {string} dateTime
 * @returns {string}
 */
export function timeFormatting(dateTime) {
	let date = new Date(dateTime || '')
	return (date.getHours() < 10 ? '0' + date.getHours() : date.getHours()) + ':' + (date.getMinutes() < 10 ? '0' + date
		.getMinutes() : date.getMinutes()) + ':' + (date.getSeconds() < 10 ? '0' + date.getSeconds() : date.getSeconds())
}
// 使用
// timeFormatting(new Date());
// timeFormatting(1719477463); // 16:37:43
// timeFormatting(1719477463000); // 16:37:43
六、秒 转换为 分秒
javascript 复制代码
/**
 * 秒 转换为 分秒
 * @param {Object} s
 */
export function formatTime(s) {
	let t = '';
	s = Math.floor(s);

	if (s > -1) {
		let min = Math.floor(s / 60) % 60;
		let sec = s % 60;

		if (min < 10) {
			t += "0";
		}
		t += min + ":";

		if (sec < 10) {
			t += "0";
		}
		t += sec;
	}
	return t;
}
// 使用
// formatTime(90); // 01:30
相关推荐
Heo18 分钟前
大厂前端调试不能只会debugger
前端·javascript·面试
用户21816970493022 分钟前
Flutter (十七) 网络请求
前端
cidy_9822 分钟前
React 19 + Vite 企业级前端项目:从零搭建到规范交付
前端
用户9210802628625 分钟前
如何把一张图片做成自定义复杂 UI 图标
前端
用户9385156350737 分钟前
从 0 拆解一个 Next.js 笔记系统:npx、App Router、RSC 与组件规划全记录
前端·后端·全栈
hello93071 小时前
plop代码生成器
前端
windliang1 小时前
Claude Code 源码分析(十二):错误处理与自动恢复:让 Agent 稳定运行
前端·javascript·面试
fatcoder1 小时前
玩转Docker 06 — 容器网络
前端·后端·docker
打呵欠的猫1 小时前
我用 AI 重写了项目的请求层,从 800 行"面条代码"变成 3 层洋葱模型
前端·ai编程
默_笙1 小时前
🛬 前端路由的"高级玩法":懒加载、404、鉴权路由,一个都不能少(下篇)
前端·javascript