js格式化时间(指定模板格式)

时间:2023-01-23 14:39:00
 1 /** 格式化时间
2 * @param {string} date 需要格式化的时间
3 * @param {string} fmt 想要格式化的格式
4 */
5 function formatDate(date, fmt) {
6 if (/(y+)/.test(fmt)) {
7 fmt = fmt.replace(RegExp.$1, (date.getFullYear() + '').substr(4 - RegExp.$1.length));
8 }
9 let o = {
10 'M+': date.getMonth() + 1,
11 'd+': date.getDate(),
12 'h+': date.getHours(),
13 'm+': date.getMinutes(),
14 's+': date.getSeconds()
15 };
16 for (let k in o) {
17 if (new RegExp(`(${k})`).test(fmt)) {
18 let str = o[k] + '';
19 fmt = fmt.replace(RegExp.$1, (RegExp.$1.length === 1) ? str : padLeftZero(str));
20 }
21 }
22 return fmt;
23 };
24
25 function padLeftZero(str) {
26 return ('00' + str).substr(str.length);
27 };
28
29 <script>
30 let date = new Date();
31 let res = formatDate(date,'yyyy++MM++dd hh:mm:ss') // 传入想要的格式即可
32 let res1 = formatDate(date,'yyyy++MM++dd')
33 console.log('formatDate res ==> ', res);
34 console.log('formatDate res1 ==> ', res1);
35 </script>

js格式化时间(指定模板格式)