介绍
前端经常要处理日期对象,将其转为2018-08-08
或者2018/08/08
,2018年08月08日
代码实现
个位数字补0
function leftPadding(n) {
n = n.toString()
return n.padStart(2,0)
}
日期处理
/**
* Y: year
* M: month
* D: day
* H: hour
* m: minutes
* S: seconds
*/
/**
* 可根据需要传递pattern得到自己想要的结果
* @param date 日期对象
* @param pattern
* @returns {string}
*/
const formatTime = (date = new Date(), pattern = 'Y/M/D') => {
const year = date.getFullYear()
const month = date.getMonth() + 1
const day = date.getDate()
const hour = date.getHours()
const minutes = date.getMinutes()
const seconds = date.getSeconds()
return pattern
.replace('Y', year)
.replace('M', formatNumber(month))
.replace('D', formatNumber(day))
.replace('H', formatNumber(hour))
.replace('m', formatNumber(minutes))
.replace('S', formatNumber(seconds))
}
代码测试
console.log(formatTime()) // 2018/04/10
console.log(formatTime(new Date(2018, 3, 21))) // 2018/04/21
console.log(formatTime(new Date(1822333333333),'Y-M-D H:m:S')) // 2027-10-01 03:42:13
console.log(formatTime(new Date(2018, 3, 21), 'Y年M月D日')) // 2018年04月21日
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。