紫衣仙女
2019-12-06 15:43:22
我可以使用moment.js或純js獲得兩個日期之間的差異。在moment.js中var a = moment(timestamp1);var b = moment(timestamp2);var month =a.diff(b, 'month');var day =a.diff(b, 'day') - month;var year =a.diff(b, 'hours');月返回月,日返回天差。但是我想要答案MM-DD-hh格式例如2個月12天5小時。我無法直接轉換日期,因為還有leap年等其他問題。還有什么其他辦法可以全力以赴并計算一切嗎?我在angular js中這樣做,如果有幫助
3 回答

ITMISS
TA貢獻1871條經驗 獲得超8個贊
var date1 = new Date("4/14/2016");
var date2 = new Date("10/16/2016");
var timeDiff = Math.abs(date2.getTime() - date1.getTime());
var newDate = new Date(timeDiff);
alert(newDate);
alert("Month " + (newDate.getUTCMonth() + 1));
alert("Date " + newDate.getUTCDate());
alert("Hour " + newDate.getUTCHours());

紅顏莎娜
TA貢獻1842條經驗 獲得超13個贊
您無法將差異(差異結果是數字)轉換為MM-DD-hh格式,因為某些月份的長度為30天,而另一些月份的長度為31天。
可以從開始和結束日期時間計算得出。
您正在尋找類似的功能,但不完全相同
moment("2010-01-01").from("2010-12-01")
結果:一年前
moment("2010-01-01").from("2010-12-01", true)
結果:一年
添加回答
舉報
0/150
提交
取消