function formatMsgTime(dateTimeStamp) {
// 时间字符串转时间戳 获取毫秒数
var timestamp = new Date(dateTimeStamp.replace(/-/g,'/')).getTime();
var minute = 1000 * 60;
var hour = minute * 60;
var day = hour * 24;
var halfamonth = day * 15;
var month = day * 30;
var year = day * 365;
var now = new Date().getTime();
var diffValue = now - timestamp;
var result;
if (diffValue < 0) {
return;
}
var yearC = diffValue / year;
var monthC = diffValue / month;
var weekC = diffValue / (7 * day);
var dayC = diffValue / day;
var hourC = diffValue / hour;
var minC = diffValue / minute;
if (yearC >= 1) {
result = "" + parseInt(yearC) + "年前";
} else if (monthC >= 1) {
result = "" + parseInt(monthC) + "月前";
} else if (weekC >= 1) {
result = "" + parseInt(weekC) + "周前";
} else if (dayC >= 1) {
result = "" + parseInt(dayC) + "天前";
} else if (hourC >= 1) {
result = "" + parseInt(hourC) + "小时前";
} else if (minC >= 1) {
result = "" + parseInt(minC) + "分钟前";
} else
result = "刚刚";
return result;
}
注意:
"2021-05-01 12:53:59.55" 时间对象在 ios 中会出现 NaN-NaN1-NaN
查阅博客后发现需要将对象格式化为:"2021/05/01 12:53:59.55" 可同时兼容 android 和 ios。
用new Date("2021-05-01 12:53:59.55".replace(/-/g,"/"))即可。