日期格式化
基本使用
使用案例:1685514045679 变为 2023-05-31 14:20:45
vue
<script setup lang="ts">
import { dateFormat } from 'vue-hkp-ui'
dateFormat(1685514045679) // 2023-05-31 14:20:45
</script>内部方法
vue
<script setup lang="ts">
function dateFormat (timestamp: number|string|Date, format = 'YYYY-MM-DD HH:mm:ss'): string {
var date = new Date(timestamp)
function fixedTwo (value: number): string {
return value < 10 ? '0' + value : String(value)
}
var showTime = format
if (showTime.includes('SSS')) {
const S = date.getMilliseconds()
showTime = showTime.replace('SSS', '0'.repeat(3 - String(S).length) + S)
}
if (showTime.includes('YY')) {
const Y = date.getFullYear()
showTime = showTime.includes('YYYY') ? showTime.replace('YYYY', String(Y)) : showTime.replace('YY', String(Y).slice(2, 4))
}
if (showTime.includes('M')) {
const M = date.getMonth() + 1
showTime = showTime.includes('MM') ? showTime.replace('MM', fixedTwo(M)) : showTime.replace('M', String(M))
}
if (showTime.includes('D')) {
const D = date.getDate()
showTime = showTime.includes('DD') ? showTime.replace('DD', fixedTwo(D)) : showTime.replace('D', String(D))
}
if (showTime.includes('H')) {
const H = date.getHours()
showTime = showTime.includes('HH') ? showTime.replace('HH', fixedTwo(H)) : showTime.replace('H', String(H))
}
if (showTime.includes('m')) {
var m = date.getMinutes()
showTime = showTime.includes('mm') ? showTime.replace('mm', fixedTwo(m)) : showTime.replace('m', String(m))
}
if (showTime.includes('s')) {
var s = date.getSeconds()
showTime = showTime.includes('ss') ? showTime.replace('ss', fixedTwo(s)) : showTime.replace('s', String(s))
}
return showTime
}
</script>dateFormat Params
| 参数 | 说明 | 类型 | 默认值 | 必传 |
|---|---|---|---|---|
| timestamp | 时间戳 | number/string/Date | - | true |
