同一设定的时间在MomentJs时区中返回两个不同的日期?

发布于 2025-01-18 10:02:14 字数 937 浏览 1 评论 0原文

即使我在 moment.js 时区中为时间设置的值相同,以下两种不同的方法返回的日期值也是不同的

  1. moment("02:00","HH:mm").tz('America/芝加哥').format()

返回 2022-03-31T15:30:00-05:00

  1. moment().tz('America/Chicago').set({hour:"02",min:"00"})

返回 2022-04-01T02:00:02- 05:00

谁能帮我理解为什么会这样?

console.log(moment("02:00","HH:mm").tz('America/Chicago').format());
console.log(moment().tz('America/Chicago').set({hour:"02",minute:"00"}).format());
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.29.1/moment.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment-timezone/0.5.34/moment-timezone-with-data-10-year-range.js"></script>

Even the value I set for the time in the moment.js timezones same following two different approaches the value of the date returned is different

  1. moment("02:00","HH:mm").tz('America/Chicago').format()

returns 2022-03-31T15:30:00-05:00

  1. moment().tz('America/Chicago').set({hour:"02",minute:"00"})

returns 2022-04-01T02:00:02-05:00

Can anyone please help me in understanding why is it so?

console.log(moment("02:00","HH:mm").tz('America/Chicago').format());
console.log(moment().tz('America/Chicago').set({hour:"02",minute:"00"}).format());
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.29.1/moment.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment-timezone/0.5.34/moment-timezone-with-data-10-year-range.js"></script>

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

空名 2025-01-25 10:02:14

您可以通过两个示例采用不同的方法:

在第一个示例中,您执行以下操作:

  1. 采用本地日期(2021-04-01 12:15
  2. 设置本地时间em> 日期到 02:00 (2021-04-01 02:00)
  3. 将特定本地日期移至其他时区(例如从+02:00 tz 到 -05:00 - 向后移动 7 小时)(2021-03-31 15:00

)您执行的第二个示例:

  1. 采用本地日期 (2021-04-01 12:15)
  2. 本地日期移至其他时区(2021-04-01 06:15)
  3. 移动时间设置为 02:00 (2021-04-01 02 :00)

You have different approach with two examples:

In first example you do:

  1. Take local date (2021-04-01 12:15)
  2. Set time for local date to 02:00 (2021-04-01 02:00)
  3. Move that particular local date to other time zone (so e.g. from +02:00 tz to -05:00 - moves back by 7 hours) (2021-03-31 15:00)

While in second example you do:

  1. Take local date (2021-04-01 12:15)
  2. Move that local date to other time zone (2021-04-01 06:15)
  3. Set time for moved time to 02:00 (2021-04-01 02:00)
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文