gpt4 book ai didi

javascript - Firebase 时间戳返回错误日期 - Javascript

转载 作者:行者123 更新时间:2023-12-04 09:30:13 25 4
gpt4 key购买 nike

我正在尝试从 firestore 获取 Timestamp 值(使用 Firebase 函数),并且我已经使用 Timestamp 的 toDate() 方法和矩库在本地成功地完成了它。

moment(doc.data().EndDate.toDate())
但是,当我将代码部署到 firebase 并测试该函数时,以某种方式 toDate() 返回的日期比 firebase 上保存的时间戳少 1 小时。我想它正在将我的日期转换为 UTC,因为我在 UTC+1 中,并且时间戳也与 UTC+1 一起存储在 firestore 中,但我不知道如何像在 firestore 中一样可靠地获取时间戳日期,不分时区。
如果有人知道为什么会发生这种情况或知道如何解决它,那就太好了。

最佳答案

Firestore 中的所有时间戳都以 UTC 格式存储。 如果您在 Firebase 控制台中看到不同的内容,那只是您的浏览器将其格式化为您的本地时区。
在 JavaScript 中,所有 Date 对象也以 UTC 表示。如果将其格式化为字符串,则可能会再次根据本地时区获得不同的表示形式。
如果您编写使用日期或时间戳计算值的代码,您应该使用 UTC 执行所有计算.这几乎是所有计算系统都想要处理的日期。当需要格式化显示给最终用户的日期时,您才应该考虑时区,并根据用户的喜好呈现一些东西。

关于javascript - Firebase 时间戳返回错误日期 - Javascript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62876786/

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