Javascript momentjs 将 UTC 从字符串转换为日期对象

Cma*_*mag 3 mongodb node.js momentjs

各位,在处理 moment.js 文档时遇到了困难。

record.lastModified = moment.utc().format();
Run Code Online (Sandbox Code Playgroud)

返回:

2014-11-11T21:29:05+00:00
Run Code Online (Sandbox Code Playgroud)

太棒了,它采用 UTC 格式...当我将其存储在 Mongo 中时,它被存储为 a String,而不是Date对象类型,这正是我想要的。

我需要它是:

"lastModified" : ISODate("2014-11-11T15:26:42.965-0500")
Run Code Online (Sandbox Code Playgroud)

但我需要它是一个原生的javascript 对象类型,并将其存储在 Mongo 中。现在,如果我存储上述内容,它将作为字符串而不是日期对象类型输入。

我已经用 moment.js 尝试了几乎所有的方法。他们的 toDate() 函数可以工作,但会回退到我当地的时区,并且不给我 utc。

谢谢!

Jam*_*mie 5

保存 JavascriptDate对象将导致ISODate存储在 Mongo 中。

将 ISO 日期保存为 JavascriptString将导致String存储在 Mongo 中。

所以,这就是你想要的:record.lastModified = new Date(moment().format());