格式化日期时间方法总结

文章目录

一、格式化时间(年月日时分秒)
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
相关推荐
FL16238631291 小时前
室内易燃物识别易燃评估室内易燃程度识别分割数据集labelme格式1015张85类别
java·服务器·前端
用户059540174461 小时前
把 AI 长期记忆去重测试从 20 分钟压到 40 秒,重复率从 18% 干到 1.5%
前端·css
kyriewen1 小时前
我把 AI 写的并发请求控制器手写了一遍——3 个语义我当时根本讲不清
前端·javascript·面试
_codemonster2 小时前
Vue中的ref和reactive到底在干嘛
前端·javascript·vue.js
IT_陈寒2 小时前
为什么我的JavaScript闭包总是漏掉那个变量?
前端·人工智能·后端
两只羊ovo2 小时前
前端八股之 storage & this:两个最容易卡住的点,一次讲透
前端
用户921080262863 小时前
Bubble 打字机效果实践:从项目配置到源码实现
前端
张元清3 小时前
React useEventListener Hook:类型安全的 DOM 事件监听 (2026)
javascript·react.js
weixin_461408583 小时前
npm npx yarn
开发语言·前端·javascript