作为现在经常使用的时间new Date(),有着许多的处理方法对它进行格式转换
1、不想自己处理时间格式的,推荐使用Moment.js
2、使用原生的new date()操作格式化时间:
let dataTime = new Date()
dataTime.Format("yyyy-MM-dd hh:mm:ss") // 2021-05-13 09:37:00
data方法 | |
---|---|
年 | dataTime.getYear() |
月 | dataTime.getMonth() + 1 |
日 | dataTime.getDate() |
时 | dataTime.getHours() |
分 | dataTime.getMinutes() |
秒 | dataTime.getSeconds() |
3、如果是格式化后的时间 2021-05-13 09:37:00转为时间对象
那么需要通过replace
newTime = ‘2021-05-13 09:37:00’. replace(/-/,"/"))// 2021/05/13 09:37:00
然后通过new date(newTime)重新获取时间对象
4、网上用的很广泛的格式化函数:
d = new date() // 输入的时间
let _format = 'yyyy-MM-dd hh:mm:ss'
const o = {
'M+': d.getMonth() + 1,
'd+': d.getDate(),
'h+': d.getHours(),
'm+': d.getMinutes(),
's+': d.getSeconds(),
'q+': Math.floor((d.getMonth() + 3) / 3),
S: d.getMilliseconds()
}
if (/(y+)/.test(_format)) _format = _format.replace(RegExp.$1, (d.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)))