Last active
July 22, 2021 07:08
-
-
Save bigshans/271913fdc085fd4ddd6af09ea91a1f66 to your computer and use it in GitHub Desktop.
ts/js utils code
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
function formatTime(time: Date|number|string, format: string = 'YY-MM-DD hh:mm:ss'): string { | |
if (!time) { | |
return ''; | |
} | |
let date: Date; | |
if (typeof time === 'number') { | |
date = new Date(time); | |
} else if (typeof time === 'string') { | |
if (/^\d+$/g.test(time)) { | |
date = new Date(+time); | |
} else { | |
date = new Date(time); | |
} | |
} else { | |
date = time; | |
} | |
let map: any = { | |
M: date.getMonth() + 1, | |
D: date.getDate(), | |
h: date.getHours(), | |
m: date.getMinutes(), | |
s: date.getSeconds(), | |
}; | |
return format.replace(/([YMDhms])+/g, function(w, t) { | |
let v = map[t]; | |
if (v !== undefined) { | |
if (w.length > 1) { | |
return ('0' + v).slice(-2); | |
} | |
return v; | |
} else if ('Y' === t) { | |
return (date.getFullYear() + '').slice(-w.length * 2); | |
} | |
return w; | |
}); | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment