gpt4 book ai didi

javascript - 如何在没有时移的情况下解析数据库中的日期字符串?

转载 作者:行者123 更新时间:2023-12-02 14:26:45 25 4
gpt4 key购买 nike

我从数据库获取 2016-07-13T00:00:00.000Z 字符串,并使用 moment.js 将其转换为 MM/DD/YYYY 格式,如下所示:

result = moment('2016-07-13T00:00:00.000Z').format('MM/DD/YYYY');

打印 07/12/2016 但我期待 07/13/2016。本地 Linux 时区是 America/New_York。 date 命令打印此 Mon Jul 4 04:28:19 EDT 2016

最佳答案

您获得的日期采用 UTC 格式,如末尾的 z 所示。

当您使用默认的时刻构造函数 moment() 时,它会将您传递的时间从指定的偏移量(在本例中为 UTC)转换为机器的本地时间。这就是您的日期发生变化的原因。因为这是 UTC 日期,为了保持它完全相同,您可以使用 moment.utc():

moment.utc('2016-07-13T00:00:00.000Z').format('MM/DD/YYYY');
"07/13/2016"

或者,parseZone 也可以工作:

moment.parseZone('2016-07-13T00:00:00.000Z').format('MM/DD/YYYY');
"07/13/2016"

有关 moment 中所有构造函数的更多信息,请参阅 parsing guidethis blog post

关于javascript - 如何在没有时移的情况下解析数据库中的日期字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38180044/

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