最近项目需求将后台返回的时间转换成几秒前,几分钟前,几小时前,几天前,几个月前,所以做了一个封装
function handleTime(dateStr) {
if (dateStr === undefined) {
return;
}
let date = new Date(dateStr);
let now = new Date();
let digit = parseInt((now.getTime() - date.getTime()) / 1000);
let suffix = '秒前';
if (digit < 60) {
return '刚刚';
} else {
digit = parseInt(digit / 60);
suffix = '分钟前';
if (digit >= 60) {
digit = parseInt(digit / 60);
suffix = '小时前';
if (digit >= 24) {
digit = parseInt(digit / 24);
suffix = '天前';
if (digit >= 30) {
digit = parseInt(digit / 30);
suffix = '个月前';
if (digit >= 12) {
digit = parseInt(digit / 12);
suffix = '年前';
}
}
}
}
}
return digit + suffix;
}