mysql时间戳传到前台,百度的那些都转换代码都不可用。此代码片段是从一个在线转换网站扣的。

/**
 * 将时间转换为 xx小时前
 * @param {Object} pTime
 */
function jsDateDiff(pTime) {
    var d_minutes, d_hours, d_days, d;
    var timeNow = parseInt(new Date().getTime() / 1000);
    pTime_new = new Date(pTime).getTime() / 1000;
    d = timeNow - pTime_new;
    d_days = parseInt(d / 86400);
    d_hours = parseInt(d / 3600);
    d_minutes = parseInt(d / 60);
    if (d_days > 0 && d_days < 4) {
        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 {
        return pTime;
    }
}
function format(timestamp) {
    var time = new Date(timestamp);
    var year = time.getFullYear();
    var month = (time.getMonth() + 1) > 9 && (time.getMonth() + 1) || ('0' + (time.getMonth() + 1)) var date = time.getDate() > 9 && time.getDate() || ('0' + time.getDate()) var hour = time.getHours() > 9 && time.getHours() || ('0' + time.getHours()) var minute = time.getMinutes() > 9 && time.getMinutes() || ('0' + time.getMinutes()) var second = time.getSeconds() > 9 && time.getSeconds() || ('0' + time.getSeconds()) var YmdHis = year + '-' + month + '-' + date + ' ' + hour + ':' + minute + ':' + second;
    return YmdHis;
}
var timestamp = '1466076718000';
timestamp = timestamp.replace(/^\s+|\s+$/, '');
if (/^\d{10}$/.test(timestamp)) {
    timestamp *= 1000;
} else if (/^\d{13}$/.test(timestamp)) {
    timestamp = parseInt(timestamp);
} else {
    alert('时间戳格式不正确!');
    return;
}
var YmdHis = format(timestamp);
alert(YmdHis);


相关评论(0)
发 布 (Ctrl+Enter)
还没有评论,快来抢沙发吧!