直接把时间戳转换为日期时间
今天显示 dd:mm
昨天显示 昨天
昨天之前显示 yyyy/mm/dd (可自定义)
1.函数如下
export function timeFormat(t, format) { //时间格式化
if (!format) format = 'y-m-d h:i:s';
if (t) t = new Date(t);
else t = new Date();
const formatArr = [t.getFullYear().toString(), padZero((t.getMonth() + 1).toString()), padZero(t.getDate().toString()), padZero(t.getHours().toString()), padZero(t.getMinutes().toString()), padZero(t.getSeconds().toString())];
const reg = 'ymdhis';
for (let i = 0; i < formatArr.length; i++) {
format = format.replace(reg.charAt(i), formatArr[i]);
}
return format;
}
export function isTodayOrYesterday(time) { //判断当前时间是今天还是昨天
let d = new Date(time);
// d = d.replace(/-/g, '/');
var td = new Date();
td = new Date(td.getFullYear(), td.getMonth(), td.getDate());
var od = new Date(d);
od = new Date(od.getFullYear(), od.getMonth(), od.getDate());
var xc = (od - td) / 1000 / 60 / 60 / 24;
if (xc == 0) {
return 1; //今天
} else if (-1 <= xc && xc < 0) {
return 2; //昨天
} else {
return 3; //
}
}
2.使用方式
//判断时间是今天还是昨天还是之前
testCurrTime(time) {
if (isTodayOrYesterday(time) == 1) {
return timeFormat(+time, 'h:i');
} else if (isTodayOrYesterday(time) == 2) {
return '昨天';
} else {
return timeFormat(+time, 'y/m/d');
}
},