如何在JavaScript中計算兩個日期之間的天數
我遇到了這個問題:如何計算兩個日期之間的天數?
具體來說,我想要計算一個人租房並在其中入住的夜晚數量,根據入住日期和退房日期。
我查看了不同的解決方案,並找到了一個在考慮到日期的所有問題(包括夏令時間)後給我帶來最少問題的解決方案:從開始日期開始,我們一直添加一天,直到日期表示的日期在結束日期之後為止。
以下是程式碼:
1 | const numberOfNightsBetweenDates = (startDate, endDate) => { |
我首先複製了我們給定的日期,因為日期是對象,我們得到對該對象的引用。這意味著在函數中使用setDate()
也會影響到函數外的變量,這是我們不希望看到的!
就這樣。
如果您只是想獲取兩個日期之間的天數(例如,從今天到明天是2天),只需將 while (end > start)
更改為 while (end >= start)
即可。這樣就可以了。或者將dayCount
的起始點增加為1
。
tags: [“JavaScript日期”, “JavaScript函數”, “JavaScript計算”]