在前面一篇文章中,我们学习到了如何获取时间和怎么算出两者之间的时间差
今天看看怎么将时间戳转换为几个月前,几周前,几天前,几分钟前的形式。与上面类似通过JavaScript计算当前时间与定义的时间的对比,匹配不同时间段的值。·
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 | 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; } |
转换标准时间为时间戳:
1 2 3 4 | //code from http://caibaojian.com/timestamp.html function getDateTimeStamp(dateStr){ return Date.parse(dateStr.replace(/-/gi,"/")); } |
演示:
这篇文章发布时间为 2016/1/20 19:59:30
文章发表时间戳为:1453291170000于:18月前