1 /*
2 1、< 60s, 显示为“刚刚”
3 2、>= 1min && < 60 min, 显示与当前时间差“XX分钟前”
4 3、>= 60min && < 1day, 显示与当前时间差“今天 XX:XX”
5 4、>= 1day && < 1year, 显示日期“XX月XX日 XX:XX”
6 5、>= 1year, 显示具体日期“XXXX年XX月XX日 XX:XX”
7 */
8 function timeFormat(time){
9 var date = new Date(time)
10 , curDate = new Date()
11 , year = date.getFullYear()
12 , month = date.getMonth() + 1
13 , day = date.getDate()
14 , hour = date.getHours()
15 , minute = date.getMinutes()
16 , curYear = curDate.getFullYear()
17 , curHour = curDate.getHours()
18 , timeStr;
19
20 if(year < curYear){
21 timeStr = year +'年'+ month +'月'+ day +'日 '+ hour +':'+ minute;
22 }else{
23 var pastTime = curDate - date
24 , pastH = pastTime/3600000;
25
26 if(pastH > curHour){
27 timeStr = month +'月'+ day +'日 '+ hour +':'+ minute;
28 }else if(pastH >= 1){
29 timeStr = '今天 ' + hour +':'+ minute +'分';
30 }else{
31 var pastM = curDate.getMinutes() - minute;
32 if(pastM > 1){
33 timeStr = pastM +'分钟前';
34 }else{
35 timeStr = '刚刚';
36 }
37 }
38 }
39 return timeStr;
40 }