格式化日期时间方法总结

文章目录

一、格式化时间(年月日时分秒)
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
相关推荐
excel9 小时前
为什么在 Three.js 中平面能产生“起伏效果”?
前端
excel10 小时前
Node.js 断言与测试框架示例对比
前端
天蓝色的鱼鱼12 小时前
前端开发者的组件设计之痛:为什么我的组件总是难以维护?
前端·react.js
codingandsleeping12 小时前
使用orval自动拉取swagger文档并生成ts接口
前端·javascript
石金龙13 小时前
[译] Composition in CSS
前端·css
白水清风13 小时前
微前端学习记录(qiankun、wujie、micro-app)
前端·javascript·前端工程化
Ticnix13 小时前
函数封装实现Echarts多表渲染/叠加渲染
前端·echarts
用户221520442780013 小时前
new、原型和原型链浅析
前端·javascript
阿星做前端13 小时前
coze源码解读: space develop 页面
前端·javascript
叫我小窝吧13 小时前
Promise 的使用
前端·javascript