在前面一篇文章中,我们学习到了如何获取时间和怎么算出两者之间的时间差
今天看看怎么将时间戳转换为几个月前,几周前,几天前,几分钟前的形式。与上面类似通过JavaScript计算当前时间与定义的时间的对比,匹配不同时间段的值。
function getDateDiff(dateTimeStamp){ var minute = 1000 * 60; var hour = minute * 60; var day = hour * 24; var halfamonth = day * 15; var month = day * 30; var now = new Date().getTime(); var diffValue = now - dateTimeStamp; if(diffValue < 0){return;} var monthC =diffValue/month; var weekC =diffValue/(7*day); var dayC =diffValue/day; var hourC =diffValue/hour; var minC =diffValue/minute; 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; }
转换标准时间为时间戳:
function getDateTimeStamp(dateStr){ return Date.parse(dateStr.replace(/-/gi,"/")); }
演示:
这篇文章发布时间为 2016/1/20 19:59:30