Files
loan/src/date.prototype.d.ts
dute7liang 97daeafbe7 init
2023-12-19 22:23:45 +08:00

41 lines
1.1 KiB
TypeScript

interface Date {
format(format: string): string
}
/**
* 时间格式化
* @param format
*/
Date.prototype.format = function (format: DateType | undefined = 'datetime'): string {
if (format === 'date') {
format = 'yyyy-MM-dd'
} else if (format === 'datetime') {
format = 'yyyy-MM-dd hh:mm:ss'
} else if (format === 'time') {
format = 'hh:mm:ss'
}
const o = {
"M+": this.getMonth() + 1, //month
"d+": this.getDate(), //day
"h+": this.getHours(), //hour
"m+": this.getMinutes(), //minute
"s+": this.getSeconds(), //second
"q+": Math.floor((this.getMonth() + 3) / 3), //quarter
"S": this.getMilliseconds() //millisecond
}
if (/(y+)/.test(format)) {
format = format.replace(RegExp.$1, (this.getFullYear() + "").substr(4 - RegExp.$1.length));
}
for (const 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;
}
// String.prototype.formatDate = function (format) {
// const time = this.replaceAll(/-/g, "/");
// return new Date(time).format(format);
// }