天数差异缺少 1 天 (javascript)?
differences in days lack of 1 days (javascript)?
我正在使用 date-fns 计算日差
import differenceInDays from "date-fns/differenceInDays";
console.log(
differenceInDays(
new Date("2020-08-12T07:22:03.498Z"),
new Date("2020-08-09T09:30:20.914Z")
)
);
答案是 2,我期待 3,因为 12-9 是 3。
怎么了? https://codesandbox.io/s/date-fns-v2-pzlex?file=/src/index.js:0-299
如果只想获取日期,请删除时区之前的时间
console.log(
differenceInDays(
new Date("2020-08-12"),
new Date("2020-08-09")
)
);
// returns 3
它应该显示给定日期之间整日的天数。 (你缺少几个小时,整整 3 天)
因此,如果您将最终日期时间更改为 new Date("2020-08-12T09:30:20.914Z")
会显示3天。
全天差异
只有全天的原因是 API 按照 DifferenceInDays
的官方文档是这样工作的
日历天数的差异
您正在寻找的是日历天数的差异,date-fns
本身就支持它,如 differenceInCalendarDays.
的文档中所示
Underwater 这个API 只是把时间剥离了,这似乎就是你要找的。
例子
import differenceInCalendarDays from "date-fns/differenceInCalendarDays";
console.log(
differenceInCalendarDays(
new Date("2020-08-12T07:22:03.498Z"),
new Date("2020-08-09T09:30:20.914Z")
)
);
我正在使用 date-fns 计算日差
import differenceInDays from "date-fns/differenceInDays";
console.log(
differenceInDays(
new Date("2020-08-12T07:22:03.498Z"),
new Date("2020-08-09T09:30:20.914Z")
)
);
答案是 2,我期待 3,因为 12-9 是 3。
怎么了? https://codesandbox.io/s/date-fns-v2-pzlex?file=/src/index.js:0-299
如果只想获取日期,请删除时区之前的时间
console.log(
differenceInDays(
new Date("2020-08-12"),
new Date("2020-08-09")
)
);
// returns 3
它应该显示给定日期之间整日的天数。 (你缺少几个小时,整整 3 天)
因此,如果您将最终日期时间更改为 new Date("2020-08-12T09:30:20.914Z")
会显示3天。
全天差异
只有全天的原因是 API 按照 DifferenceInDays
的官方文档是这样工作的日历天数的差异
您正在寻找的是日历天数的差异,date-fns
本身就支持它,如 differenceInCalendarDays.
Underwater 这个API 只是把时间剥离了,这似乎就是你要找的。
例子
import differenceInCalendarDays from "date-fns/differenceInCalendarDays";
console.log(
differenceInCalendarDays(
new Date("2020-08-12T07:22:03.498Z"),
new Date("2020-08-09T09:30:20.914Z")
)
);