这里分享的是取客户端的时间,如果是服务器时间直接把timeNow变量设置为服务器当前时间戳就可以了,publishTime变量就是文章发表的时间戳。这个函数判断了超过4天的时间就显示月份和日期,4天内的时间就显示3天前这样的格式。
function jsDateDiff(publishTime){
var d_minutes,d_hours,d_days;
var timeNow = parseInt(new Date().getTime()/1000); //转换为服务器当前时间戳
var d;
d = timeNow - publishTime;
d_days = parseInt(d/86400);
d_hours = parseInt(d/3600);
d_minutes = parseInt(d/60);
if(d_days>0 && d_days<4){
return d_days+"天前";
}else if(d_days<=0 && d_hours>0){
return d_hours+"小时前";
}else if(d_hours<=0 && d_minutes>0){
return d_minutes+"分钟前";
}else{
var s = new Date(publishTime*1000);
//return s.getFullYear()+"年";
return (s.getMonth()+1)+"月"+s.getDate()+"日";
}
}