我们在开发前端项目时,经常需要对日期时间进行各种格式化显示,比如将其转换成前天、昨天、今天、明天、后天,其余日期转换成周几展示。具体源码如下:
函数:
getDayOrWeek(date) {
if (date == null) return ''
const dayArr = ['前天', '昨天', '今天', '明天', '后天']
// 星期数组
const weekArr = ['日', '一', '二', '三', '四', '五', '六']
// 获取传入日期与当前日期相差的天数,一天 86400000 毫秒
const diffTime = (date.setHours(0, 0, 0, 0) - new Date().setHours(0, 0, 0, 0)) / 86400000
// 获取“前天/昨天/今天/明天/后天”,若不在这些里面则显示星期
return dayArr[diffTime + 2] || `周${weekArr[date.getDay()]}`
}
使用:
console.log(getDayOrWeek(new Date('2023/1/29 9:20:20')))
console.log(getDayOrWeek(new Date('2023/01/29 09:20:20')))
console.log(getDayOrWeek(new Date('2023-1-29 9:20:20')))
console.log(getDayOrWeek(new Date('2023-01-29 09:20:20')))
console.log(getDayOrWeek(new Date(2023, 0, 29, 9, 20, 20)))
版权属于:瞭月
本文链接:https://www.lervor.com/archives/272/
版权声明:本文为瞭月原创文章,转载请附上原文出处链接和本声明。