Nodejs在mongodb中提前一小时存储日期值

时间:2013-02-19 08:07:36

标签: node.js mongodb date

我正在尝试在nodejs中保存mongodb的日期值,但保存的值是提前一天。更确切地说是一小时。

如果我在console.log(new Date(this.year, this.month, this.day));中使用nodejs,我会:

  

2013年3月19日星期二00:00:00 GMT + 0100(CET)

但在mongodb我有以下记录:

  

2013-03-18 23:00:00 +0000

记录提前一小时。

但为什么呢?我要在mongodb中设置时区吗?我正在使用Os X:

  

时区:欧洲/柏林

3 个答案:

答案 0 :(得分:3)

MongoDB仅以UTC为单位存储时间。由应用程序进行时区转换。

答案 1 :(得分:1)

它不是一小时前 - 它使用时区+00:00而不是+01:00存储在mongodb中。

<00> 00:00 by +01:00 === 23:00 by +00:00

答案 2 :(得分:1)

要避免出现时区问题,只需在process.env.TZ = 'UTC'中添加"main"