6

我想知道这是否正常,或者我在架构设置或查询过程中遗漏了什么:

我的应用程序和猫鼬在 mongodb 中正确地将日期存储为 UTC。通过 mongo shell 查看文档可以确认这一点。当我通过 mongoose 从 mongodb 检索文档时,日期现在是当地时间。

有没有办法让猫鼬在查询时将日期保持为 UTC?

4

2 回答 2

9

Mongoose 和 node.js 对你的日期没有做任何事情,只是Date当你调用它时 JavaScript 类型会产生一个本地时间字符串toString(),即使它实际上包含 UTC 时间。

如果您需要 UTC 时间字符串,请显式调用toUTCString()您的对象。Date

于 2013-07-11T16:55:54.660 回答
1

时间戳以 unix 时间戳的形式与时区无关地存储。此时间戳将跨时区工作,节点使用您当前的时区解释它。您可以使用 getUTC* 方法(例如 get getUTCHours())从日期对象中检索 UTC 值

于 2013-07-11T15:09:49.503 回答