在开发中,经常遇到时间显示的问题,其中有一个就是在显示时需要显示成,刚刚发表,一小时前发表,一天前发表。。。,我们不可能每次显示的时候都要去运算一遍,因此就有了时间显示的插件:
**
* 显示时间插件
*/
function showTime(time){
var year = eval(time.substring(0,4));
var month = eval(time.substring(5,7));
var day = eval(time.substring(8,10));
var hour = eval(time.substring(11,13));
var minute = eval(time.substring(14,16));
var dataTime = Date.parse(year+"/"+month+"/"+day+" "+time.substring(11,19));
var now = new Date();
var today = Date.parse(now.getFullYear()+"/"+(now.getMonth()+1)+"/"+now.getDate());
if(dataTime<today-1000*60*60*24*30){
return year%100+"年"+month+"月 "+day+"日"+hour+"点"+minute+"分";
}
if(dataTime<today-1000*60*60*24*2){
return month+"月"+day+"日 "+hour+"点"+minute+"分";
}
if(dataTime<today-1000*60*60*24*1){
return "前天 "+hour+"点"+minute+"分";
}
if(dataTime<today){
return "昨天 "+hour+"点"+minute+"分";
}
if(dataTime>now.getTime()-1000*60){
return "刚刚";
}
if(dataTime>now.getTime()-1000*60*2){
return "一分钟前";
}
if(dataTime>now.getTime()-1000*60*3){
return "两分钟前";
}
return time.substring(11,16);
}