使用方法前提:时间必须是毫秒为单位的时间戳,如果不是请自行修改代码
timeFliter(timer){
let sendTime = timer
let timeData = new Date(timer)
let nowData = new Date().getTime() //获取现在的时间
let str = '';
let yesterday = new Date(new Date().toLocaleDateString()).getTime() - 1000 //获取昨天凌晨23:59时间
if((yesterday-sendTime)>31536000000){//年-月-日
str = new Date(timeData).getFullYear()+'-' + (new Date(timeData).getMonth()+1) + '-' + new Date(timeData).getDate()
}else if((yesterday-sendTime ) > 86400000 && (yesterday-sendTime) < 31536000000){//月 日 时分
str = (new Date(timeData).getMonth()+1) + '-' + new Date(timeData).getDate() + ' '+ new Date(timeData).getHours() + ':' + new Date(timeData).getMinutes()
}else if((yesterday-sendTime)<86400000 && (yesterday-sendTime) > 0){//月 日 时分
str = (new Date(timeData).getMonth()+1) + '-' + new Date(timeData).getDate() + ' '+ new Date(timeData).getHours() + ':' + new Date(timeData).getMinutes()
}else{//当天
str = new Date(timeData).getHours() + ':' + new Date(timeData).getMinutes()
}
return str
}
使用方法:
可在js或者html中使用
<div>{{1652692614834|timeFliter}}</div>
var updateTime = this.timeFliter(1652692614834)
注意:此代码中的str =xxxxxxxxx这段代码没有经过测试,请自行书写,但是if判断应该没问题
其中的的两个else if 应该可以合并,本人因为效果出来了就没有去优化,有大佬优化测试之后,可以告知一下,谢谢