const opt = { "y+": date.getFullYear().toString(), // 年 "m+": (date.getMonth() + 1).toString(), // 月 "d+": date.getDate().toString(), // 日 "h+": date.getHours().toString(), // 时 "M+": date.getMinutes().toString(), // 分 "s+": date.getSeconds().toString() // 秒 // 有其他格式化字符需求可以继续添加,必须转化成字符串 for (let k in opt) { ret = new RegExp("(" + k + ")").exec(fmt); if (ret) { fmt = fmt.replace(ret[1], (ret[1].length == 1) ? (opt[k]) : (opt[k].padStart(ret[1].length, "0"))) return fmt;

2、然后直接按照指定格式进行格式化,如:

var format =  dateFormat('yyyy-mm-dd hh:MM:ss',start_date_time);

如下图所示:

转自: js 日期时间的格式化 - 简书

原文链接: https://www.jianshu.com/p/49fb78bca621 其中,y 会被替换为年份,M、d、h、H、m、s、q、S、a、A 分别表示月份、 日期 、小时(12 小时制)、小时(24 小时制)、分钟、秒、季度、毫秒、上午/下午、AM/PM。可以使用 Date 对象的一些方法来进行 日期 时间 的操作,例如,使用 setDate() 方法设置 日期 ,使用 setHours() 方法设置小时数,使用 setTime() 方法设置毫秒数等等。这个函数接受两个参数,第一个参数是要 格式化 日期 时间 ,可以是 Date 对象或表示 日期 时间 的字符串,第二个参数是要 格式化 的格式,例如。 格式化 时间 的方法 如果我们点击获取的是没有 格式化 后的 时间 ,这时候我们需要将 时间 格式化 一下,比如Fri Oct 01 2021 08:00:00 GMT+0800 (中国标准 时间 )这种的格式,可以转化为yyyy-mm-dd hh:mm:ss的格式 formatDateTime(date) { if (date == "" || !date) { return ""; var date = new Dat // 对Date的扩展,将 Date 转化为指定格式的String // 月(M)、日(d)、小时(h)、分(m)、秒(s)、季度(q) 可以用 1-2 个占位符,  // 年(y)可以用 1-4 个占位符,毫秒(S)只能用 1 个占位符(是 1-3 位的数字)  // 例子:  // (ne 年份四位数,其它两位数 var date = new Date(),month,hours,minutes; var strDate = date.getFullYear()+"-"+((month=date.getMonth()+1)<10?'0'+month:month)+"-"+date.getDate()+" "+((hours=date.getHours())<10?'0'+hours:hours)+":"+((minutes=date