function time(dateTimeStamp) {
console.log(dateTimeStamp,'dateTimeStamp');
var minute = 1000 * 60; //把分,时,天,周,半个月,一个月用毫秒表示
var hour = minute * 60;
var day = hour * 24;
var week = day * 7;
var month = day * 30;
var now = new Date().getTime(); //获取当前时间毫秒
console.log(now)
var dateTimeStampNow =new Date(dateTimeStamp).getTime();//根据传入时间去选择是否需要转化为时间戳
var diffValue = now - dateTimeStampNow; //时间差
if (diffValue < 0) {
return;
}
console.log(diffValue,'diffValue');
var minC = diffValue / minute; //计算时间差的分,时,天,周,月
var hourC = diffValue / hour;
var dayC = diffValue / day;
var weekC = diffValue / week;
var monthC = diffValue / month;
var result = null;
//如果需要年份 自己补充
if (monthC >= 1 && parseInt(monthC) <= 3) {
result = " " + parseInt(monthC) + "月前"
} else if (weekC >= 1 && parseInt(weekC) <= 3) {
console.log(weekC,'weekC');
result = " " + parseInt(weekC) + "周前"
} else if (dayC >= 1 && parseInt(dayC) <= 6) {
result = " " + parseInt(dayC) + "天前"
} else if (hourC >= 1 && parseInt(hourC) <= 23) {
result = " " + parseInt(hourC) + "小时前"
} else if (minC >= 1 && parseInt(minC) <= 59) {
result = " " + parseInt(minC) + "分钟前"
} else if (diffValue >= 0 && parseInt(diffValue) <= minute) {
result = "刚刚"
} else {
dateTimeStamp.split(' ')[0] // 防止0.1+0.2 !=0.3情况下造成的时间返回值错误以及 大于三个月情况下的显示 2018-10-20 10:20:30类型的使用 其他类型根据时间戳转换为自己想要的
}
return result;
}
export {
time
}
将时间转换为 几分钟前,几天前,几周前
最新推荐文章于 2024-07-19 12:58:53 发布