gpt4 book ai didi

javascript - 将 utc 时间戳设为本地 24 小时制,然后转换回 utc

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

我有UTC日期2017-04-22T21:03:54(本地日期是2017-04-23 00:03:54,偏移量+3)

我想从服务器获取 1 天的数据。对于本例,本地时间是:

start: 2017-04-23 00:00:00
end: 2017-04-23 23:59:59

服务器的 UTC 参数:

start: 2017-04-22 21:00:00
end: 2017-04-23 20:59:59

我如何使用 moment.js 接收此日期?本地偏移量可能不同

我尝试:

moment.utc(startTime).format() // 2017-04-22T21:03:54Z, but I need 2017-04-22T21:00:00Z
// for example, if local timezone will be +6, I need 2017-04-22T18:00:00Z

最佳答案

(将我的评论作为答案)

  • 文本编码传输/协议(protocol)(如 HTTP)中日期时间的表示应遵循 ISO-8601 。时间部分应包含时区指示符(对于 UTC 时间,这是简单的 Z,请参阅链接)。这些约定消除了客户端和服务器之间关于时间文字代表什么时刻的任何歧义。
  • 后端应以 UTC 格式存储时间:
    • 这可以消除数据库移动时的任何歧义(故障转移到不同时区的备用数据库、将服务器从东海岸移动到新位置等)。
    • 它消除了 DST 时间内文字的任何歧义 overlaps .
    • 它消除了修改时区的仓促立法变更(其中每隔几年就会发生几次)中的任何歧义

话虽如此,如果您需要使用 MomentJS 将 JavaScript/Node 中的 UTC 时间转换为本地时间,请使用 Moment 的 local() .

关于javascript - 将 utc 时间戳设为本地 24 小时制,然后转换回 utc,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43693590/

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