我正在尝试创建一个函数,该函数使用dayjs
. 这些是我认为我需要的结果示例:
日期 | 时区 | 开始 | 结尾 |
---|---|---|---|
2021-04-15 | 美国/纽约 | 2021-04-15T04:00:00.000Z | 2021-04-16T03:59:59.999Z |
2021-03-27 | 美国/纽约 | 2021-03-27T04:00:00.000Z | 2021-03-28T03:59:59.999Z |
2021-03-13 | 美国/纽约 | 2021-03-13T05:00:00.000Z | 2021-03-14T04:59:59.999Z |
这是我的功能:
dayjs.extend(utc);
dayjs.extend(timezone);
export const getDayRange = (date, timezone = "America/New_York") => ({
start: dayjs.tz(date, timezone).startOf("day").utc().toISOString(),
end: dayjs.tz(date, timezone).endOf("day").utc().toISOString()
});
但是,它没有输出我期望的结果,并且似乎受到当地时间的影响(因为与 UTC 的偏移在 3 月 28 日发生了变化,这是英国而不是纽约的夏令时结束)。我已经尝试dayjs
了不同结果的链式命令的各种组合,没有一个是正确的。
这感觉它应该是一个非常简单的东西,dayjs
更不用说一个相当常见的用例了。但是,我正在努力寻找工作。