gpt4 book ai didi

javascript - 根据特定时区生成规则

转载 作者:行者123 更新时间:2023-12-03 01:45:11 24 4
gpt4 key购买 nike

假设我的应用程序的用户设置了一个重复事件。他的时区是美国/丹佛,因此我将其与确定重复发生时间的rrule一起存储。

假设我的服务器和所有用户都位于同一时区,则此操作有效。但是,假设我在 America/PheonixAmerica/New_York 中有其他用户想要获取用户定义的此事件的发生情况。我需要能够使用 America/Denver 时间创建事件,然后以 UTC 时间将它们返回给用户。相反,我还需要计算 America/New_York 中的用户定义的重复事件,并将这些事件作为 UTC 返回给用户。

是否存在一个库,我可以给它一个时区和一个rrule,并让它根据该时区的规则(例如遵守 DST)生成重复事件?或者也许是第三方 API?

编辑:这是我的问题的一些澄清。

假设我有一个每周五上午 9 点发生的重复事件。如果我将此事件设置在科罗拉多州,则此事件发生的时间将与亚利桑那州的时间略有不同,亚利桑那州一年中有 5 个月没有夏令时,而科罗拉多州有夏令时。因此,在我的数据库中,我需要存储时区,并且需要某种方法来根据该时区的规则生成事件。这是我所坚持的部分,找到一种根据时区规则生成事件的方法。

最佳答案

I need some way to generate the events based on that time zone's rules

不,你不知道。 “时区规则”与事件的生成无关。全年“每周五上午 9 点”的事件将在上午 9 点举行,无论夏令时是否有效。换句话说,您可以(并且应该)完全忽略 rrule 部分的 DST。

您唯一需要做的就是保留每次出现的原始时区 - 日期和时间是不够的 - 然后,当您需要显示时,只需将日期/时间即时转换为另一个时区它给不同的用户。

我之前曾使用 Moment.js 和 Moment Timezone 来处理日期,但您可能还有其他选择。

关于javascript - 根据特定时区生成规则,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50671129/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com