js格式化时间(几秒钟前,几分钟前,几小时前,几天前...)
function time(timestamp){
var d_seconds,
d_minutes,
d_hours,
d_days,
timeNow = parseInt(new Date().getTime()/1000),
d,
date = new Date(timestamp*1000),//时间戳为10位需*1000,时间戳为13位的话不需乘1000
Y = date.getFullYear(),
M = date.getMonth() + 1,
D = date.getDate(),
H = date.getHours(),
m = date.getMinutes(),
s = date.getSeconds();
//小于10的在前面补0
if (M < 10) {
M = '0' + M;
}
if (D < 10) {
D = '0' + D;
}
if (H < 10) {
H = '0' + H;
}
if (m < 10) {
m = '0' + m;
}
if (s < 10) {
s = '0' + s;
}
d =timeNow-timestamp;
d_days = parseInt(d/86400);
d_hours = parseInt(d/3600);
d_minutes = parseInt(d/60);
d_seconds = parseInt(d);
console.log(d_days);
if(d_days > 0 && d_days < 3){
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 if (d_seconds < 60) {
if (d_seconds <= 0) {
return '刚刚发表';
}else {
return d_seconds + '秒前';
}
}else if (d_days >= 3 && d_days < 30){
return M + '-' + D + ' ' + H + ':' + m;
}else if (d_days >= 30) {
return Y + '-' + M + '-' + D + ' ' + H + ':' + m;
}
}
第二种
function time(timestamp){
var date = new Date(timestamp * 1000); //时间戳为10位需*1000,时间戳为13位的话不需乘1000
var Y = date.getFullYear();
var M =
(date.getMonth() + 1 < 10
? "0" + (date.getMonth() + 1)
: date.getMonth() + 1);
var D = date.getDate()<10?"0"+date.getDate():date.getDate();
var h = date.getHours()<10?"0"+date.getHours():date.getHours();
var m = date.getMinutes()<10?"0"+date.getMinutes():date.getMinutes();
var s = date.getSeconds()<10?"0"+date.getSeconds():date.getSeconds();
var mistiming = Math.round(new Date() / 1000)-timestamp;
var postfix = mistiming>0 ? '前' : '后'
mistiming = Math.abs(mistiming)
// var arrr = ['年','个月','星期','天','小时','分钟','秒'];
// var arrn = [31536000,2592000,604800,86400,3600,60,1];
var arrr = ['小时','分钟','秒'];
var arrn = [3600,60,1];
if(mistiming>18000){
return Y +"-"+ M+ "-"+ D+" " + h+":" + m+":" + s;
}else{
for(var i=0; i<3; i++){
var inm = Math.floor(mistiming/arrn[i])
if(inm!=0){
return inm+arrr[i] + postfix
}
}
}
}