Javascript 我如何修改此函数以考虑;“月”;及;年;?

Javascript 我如何修改此函数以考虑;“月”;及;年;?,javascript,math,datetime,date,time,Javascript,Math,Datetime,Date,Time,您需要在return表达式的末尾添加一些子句,并删除day_diff>=31保护: Math.ceil( day_diff / 31 ) + " months"; 函数prettyDate(时间){ var日期=时间, diff=(((新日期()).getTime()-Date.getTime())/1000), 日差异=数学楼层(差异/86400); 如果(isNaN(日差)| |日差

您需要在
return
表达式的末尾添加一些子句,并删除
day_diff>=31
保护:

Math.ceil( day_diff / 31 ) + " months";
函数prettyDate(时间){
var日期=时间,
diff=(((新日期()).getTime()-Date.getTime())/1000),
日差异=数学楼层(差异/86400);
如果(isNaN(日差)| |日差<0){
返回;
}
返回日_diff==0&&(
差值<60和数学下限(差值)+“秒”||
差值<120&“1分钟”||
差值<3600和数学层(差值/60)+“最小值”||
差值<7200&“1小时”||
差异<86400和数学楼层(差异/3600)+“小时”)||
日差==1&“1天”||
日差<7天和日差+“天”||
日差<31&&Math.ceil(日差/7)+“周”||
日差<365&&Math.ceil(日差/31)+“月”||
数学单元(365天)+“年”;
}

什么是“月”和“年”?当然,一个月=31天,一年=365天。每个人都知道这一点。此外,1年=11.77419个月,当然,1年=11.80645个月的闰年除外。(很明显,我从分析中排除了闰秒)。如果341Math.ceil( day_diff / 31 ) + " months";
function prettyDate(time){
    var date = time,
        diff = (((new Date()).getTime() - date.getTime()) / 1000),
        day_diff = Math.floor(diff / 86400);
    if ( isNaN(day_diff) || day_diff < 0){
        return;
    }
    return day_diff == 0 && (
            diff < 60 && Math.floor(diff) + " seconds" ||
            diff < 120 && "1 minute" ||
            diff < 3600 && Math.floor( diff / 60 ) + " min" ||
            diff < 7200 && "1 hour" ||
            diff < 86400 && Math.floor( diff / 3600 ) + " hours") ||
        day_diff == 1 && "1 day" ||
        day_diff < 7 && day_diff + " days" ||
        day_diff < 31 && Math.ceil( day_diff / 7 ) + " weeks" ||
        day_diff < 365 && Math.ceil( day_diff / 31 ) + " months" ||
        Math.ceil( day_diff / 365 ) + " years";
}