简单介绍js日期转换的两种方法:Date对象方法和引入第三方库。
一、使用Date对象内置方法
1、创建一个日期对象
说明:不传参的情况下,返回当前的日期时间对象;若想要转换已经存储的时间,则可以加入参,如:new Date(传入需要转换的时间)
let date = new Date()
2、获取年月日时分秒的方法
getFullYear()返回4位数的年份
getMonth()返回日期中的月份(0-11),0代表1月、1代表2月...依此类推
getDate()返回月份中的某一天(1-31)
getHours()返回小时(0-23)
getMinutes()返回分钟(0-59)
getSeconds()返回秒数(0-59)
let y = date.getFullYear()
let M = (date.getMonth() + 1).toString().padStart(2, '0')
let d = date.getDate().toString().padStart(2, '0')
let h = date.getHours().toString().padStart(2, '0')
let m = date.getMinutes().toString().padStart(2, '0')
let s = date.getSeconds().toString().padStart(2, '0')
补充说明:
上面使用的padStart(padLength,padString)方法,是一种字符串填充方法。
入参说明:padLength填充后的结果字符串的长度,若padLength小于字符串的长度,则字符串按原样返回,不填充;padString可选参数,指定用于填充的字符串,默认使用空格来填充。上面使用的是0去填充,保证每个值为两位数。
3、使用模板字符串拼接返回目标格式的日期
return `${y}-${M}-${d} ${h}:${m}:${s}` // 此处返回的时间格式是2024-04-01 21:03:31
二、引入第三方库--时间组件moment
1、安装:npm install moment
2、main.js引入
import moment from 'moment'
Vue.prototype.$moment = moment
moment.locale('zh-cn') // 汉化
3、使用
this.$moment(需转换的时间).format('YYYY-MM-DD HH:mm:ss') // 此处输出的时间格式是2024-04-01 21:03:31