js計算時間差,幾天前,幾小時前...
timeago(dateTimeStamp){ var dateTimeStamp; dateTimeStamp = new Date(Date.parse(dateTimeStamp.replace(/-/g, "/")));
// 將時間中的"-"替換為"/",之所以這樣是因為Date()構造函數只有2012/3/10這種形式實現瀏覽器全兼容。 var date = dateTimeStamp.getTime(); var minute=1000*60; //把分,時,天,周,半個月,一個月用毫秒表示 var hour=minute*60; var day=hour*24; var week=day*7; var halfamonth=day*15; var month=day*30; var now=new Date().getTime(); //獲取當前時間毫秒 var diffValue=now - date;//時間差 var minC=diffValue / minute; //計算時間差的分,時,天,周,月 var hourC=diffValue / hour; var dayC=diffValue / day; var weekC=diffValue / week; var monthC=diffValue / month; var result = "剛剛"; if(monthC>=1){ result="" + parseInt(monthC) + "月前"; } else if(weekC>=1){ result="" + parseInt(weekC) + "周前"; } else if(dayC>=1){ result=""+ parseInt(dayC) +"天前"; } else if(hourC>=1){ result=""+ parseInt(hourC) +"小時前"; } else if(minC>=1){ result=""+ parseInt(minC) +"分鍾前"; } return {"result":result,}; },
在計算時間差的時候遇到一個問題,得到了負數值,這個跟時區有關系
可參考:https://www.cnblogs.com/fayin/p/8119023.html