JavaScript日期工具类DateUtils定义与用法示例
介绍
JavaScript中提供了Date对象进行日期相关操作,但是有些常用的日期操作并没有提供相应的方法,因此可以使用自定义的DateUtils类来扩展Date对象的方法。
定义
下面是DateUtils的定义:
class DateUtils {
/**
* 格式化日期
* @param {Date} date 需要格式化的日期对象
* @param {String} format 格式化字符串,例如:"yyyy-MM-dd hh:mm:ss"
* @return {String} 格式化后的日期字符串
*/
static formatDate(date, format) {
let o = {
"M+" : date.getMonth()+1, //月份
"d+" : date.getDate(), //日
"h+" : date.getHours(), //小时
"m+" : date.getMinutes(), //分
"s+" : date.getSeconds() //秒
};
if(/(y+)/.test(format)) format=format.replace(RegExp.$1, (date.getFullYear()+"").substr(4 - RegExp.$1.length));
for(let k in o) if(new RegExp("("+ k +")").test(format)) format = format.replace(RegExp.$1, (RegExp.$1.length==1) ? (o[k]) : (("00"+ o[k]).substr((""+ o[k]).length)));
return format;
}
/**
*获取当天0点的日期对象
* @param {Date} date 日期对象
* @return {Date} 当天0点的日期对象
*/
static getStartOfDay(date) {
return new Date(date.getFullYear(), date.getMonth(), date.getDate());
}
}
用法示例
格式化日期
let date = new Date();
let formattedDate = DateUtils.formatDate(date, "yyyy-MM-dd hh:mm:ss");
console.log(formattedDate); // 输出格式化后的日期字符串,例如:2022-05-20 15:58:22
获取当天0点的日期对象
let date = new Date();
let startOfDay = DateUtils.getStartOfDay(date);
console.log(startOfDay); // 输出当天0点的日期对象,例如:Fri May 20 2022 00:00:00 GMT+0800 (中国标准时间)
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:JavaScript日期工具类DateUtils定义与用法示例 - Python技术站