date1.diff(date2, 'day') does not produce expected result
- Dominant language
- JavaScript
- Stars
- 48.7k
- Forks
- 2.5k
- PR merge metrics
- No merged PRs in 30d
Description
**Describe the bug**
I'm using `.diff()` with two dayjs objects to calculate a duration. However, this doesn't seem to work with `day`. Example:
```
const duration = (start, end) => {
const daysDiff = end.diff(start, 'day'); // produces `0`, expected `1`
const hoursDiff = end.diff(start, "hour"); // expected result
const minutesDiff = end.diff(start, "minute") % 60; // expected result
return `${daysDiff} day ${hoursDiff} hr ${minutesDiff} mins`;
}
duration("2019-09-28T23:00:00", "2019-09-29T00:00:00")
// -> 1 day 1 hr
```
However, if I use `const daysDiff = end.date() - start.date();` then I get the expected result.
**Expected behavior**
See above (expect `daysDiff` to be 1)
-> 1 day 1 hr
**Information**
- Day.js Version 1.8.16
- OS: Mac OS Mojave Version 10.14.2
- Browser: Chrome Version 77.0.3865.90
- Time zone: GMT-07:00 DST (Pacific Daylight Time)
Contributor guide
Assessment
This issue has not been assessed yet.