js 实现几分钟前、几小时前、几天前,以及几分钟后、几小时后、几天前后
js 实现几分钟前、几小时前、几天前,以及几分钟后、几小时后、几天前后
/* * * 把传入的时间戳与当前时间比较,计算几分钟前、几小时前、几天前,以及几分钟后、几小时后、几天前后 * unixtime 需要计算的时间戳,保留到秒 * */ function getDateTimeFormat(unixtime) { var currTime = Date.parse(new Date());; var time = ((parseInt(currTime)/1000) - parseInt(unixtime)) ; if(time > 0 ){ // 少于一分钟 if (time < 60) { return "等等"; } // 秒转分钟 var minuies = time / 60; if (minuies < 60) { return Math.floor(minuies) + "分钟后"; } // 秒转小时 var hours = time / 3600; if (hours < 24) { return Math.floor(hours) + "小时后"; } //秒转天数 var days = time / 3600 / 24; if (days < 30) { return Math.floor(days) + "天后"; } //秒转月 var months = time / 3600 / 24 / 30; if (months < 12) { return Math.floor(months) + "月后"; } //秒转年 var years = time / 3600 / 24 / 30 / 12; return Math.floor(years) + "年后"; }else{ time = Math.abs(time); // 少于一分钟 if (time < 60) { return "刚刚"; } // 秒转分钟 var minuies = time / 60; if (minuies < 60) { return Math.floor(minuies) + "分钟前"; } // 秒转小时 var hours = time / 3600; if (hours < 24) { return Math.floor(hours) + "小时前"; } //秒转天数 var days = time / 3600 / 24; if (days < 30) { return Math.floor(days) + "天前"; } //秒转月 var months = time / 3600 / 24 / 30; if (months < 12) { return Math.floor(months) + "月前"; } //秒转年 var years = time / 3600 / 24 / 30 / 12; return Math.floor(years) + "年前"; } };