js processing date returns today and tomorrow

1. Process the custom date format and return today and tomorrow

//转换时间
formatDate(time,fmt){
    var fmt = fmt || 'yyyy-MM-dd HH:mm:ss';
    var time = time ? new Date(time) : new Date();
    var o = {   
	    "M+" : time.getMonth()+1,                 //月份   
	    "d+" : time.getDate(),                    //日   
	    "H+" : time.getHours(),                   //小时   
	    "m+" : time.getMinutes(),                 //分   
	    "s+" : time.getSeconds(),                 //秒
	    "S"  : time.getMilliseconds()             //毫秒   
	};
    if(/(y+)/.test(fmt))
		fmt=fmt.replace(RegExp.$1, (time.getFullYear()+"").substr(4 - RegExp.$1.length));
	for(var k in o)
  		if(new RegExp("("+ k +")").test(fmt))
  			fmt = fmt.replace(RegExp.$1, (RegExp.$1.length==1) ? (o[k]) : (("00"+ o[k]).substr((""+ o[k]).length)));
	return fmt;
}
compareTime(Bdate) {
	let ctDate = formatDate(Bdate)
	let ctTime = new Date(ctDate).getTime() //获取历史消息时间
	let tDate = formatDate(new Date(), 'yyyy-MM-dd')
	let tTime = new Date(tDate).getTime() //获取当天凌晨时间
	let oneTime = 24 * 60 * 60 * 1000
	let yTime = tTime - oneTime //昨天
	console.log(ctTime, '----------', tTime)
	if(ctTime >= tTime) { //今天
		return '今天 ' + formatDate(ctTime, 'HH:mm')
	}else if( ctTime < tTime && ctTime >= yTime ) {
		return '昨天 ' + formatDate(ctTime, 'HH:mm')
	}else {
		return Bdate
	}
}

2. Call example

let time = '2023-02-14 15:54:37'
let result = compare(time)

Guess you like

Origin blog.csdn.net/codingLeader/article/details/129028337