仿微信消息列表的时间显示方式

 RorinL     2021年12月22日 星期三 23:57:38     vue      JavaScript   js   vue    

微信消息列表的时间显示不是年月日时分秒,而是当天的显示时分,昨天的显示昨天,那么现在就来实现一下将时间转换为这种显示方式

formatdate() {
return function(val){
let days = ['周一','周二','周三','周四','周五','周六','周日']
let now = new Date(),
nowY = now.getFullYear(),
nowM = now.getMonth()+1,
nowD = now.getDate(),
nowW = now.getDay();
let lastnow = new Date(val),
lastY = lastnow.getFullYear(),
lastM = lastnow.getMonth()+1,
lastD = lastnow.getDate(),
lastW = lastnow.getDay(),
lastH = lastnow.getHours(),
lastI = lastnow.getMinutes()<10?("0"+lastnow.getMinutes()):(lastnow.getMinutes()),
lastT = lastnow.getTime();
let fomatd = "1970-01-01 00:00:00";
if(nowM==lastM){//是这个月的
if(nowD==lastD){ //是今天的
fomatd = lastH+":"+lastI;
}else{ //不是今天
let nextWeek=new Date(`${nowY}-${nowM}-${nowD} 00:00:00`).getTime()+(8-nowW)*24*60*60*1000;
if(lastT>nextWeek){ //是这周?
fomatd = days[lastW];
}else{ //不是这周
fomatd = lastM+"月"+lastD+"日";
}
}
}else{
if(nowY==lastY){ //是今年的
fomatd = lastM+"月"+lastD+"日";
}else{
fomatd = lastY+"年"+lastM+"月"+lastD+"日";
}
}
return fomatd;
}


暂无评论

发表回复

您的电子邮箱地址不会被公开。

CAPTCHAis initialing...