红糖糍粑
考虑下年、月、日、时、分的情况,主要是通过对比时间,分成六个级别【年、月、日、时、分、1分钟内】,哪个级别匹配到了就拿出结果即可:function diffTime(dataStr){ var nowDate = new Date().getTime(), oldDate = new Date(dataStr).getTime(), diffTime = parseInt((nowDate - oldDate)/1000,10), oneMinute = 60, oneHour = 60 * oneMinute, oneDay = 24 * oneHour, oneMonth = 30 * oneDay, oneYear = 12 * oneMonth, compareArr = [oneYear,oneMonth,oneDay,oneHour,oneMinute], postfix = ['年前','个月前','天前','个小时前','分钟前','1分钟内'], diffYear,diffMonth,diffDay,diffHour,diffMinute,len=5; for(var i =0; i< len ;i++){ var diff = Math.floor(diffTime/compareArr[i]); if(diff > 0){ return diff + postfix[i]; } else if(i === len -1 && diff === 0){ return postfix[len]; } }}