JavaScript - 如何以ISODate格式保存MongoDB文档中的日期?

时间:2017-02-21 19:04:17

标签: javascript mongodb isodate

我一直在尝试将日期从javascript端保存为ISODate格式的MongoDB。但它只是以字符串格式保存MongoDB文档中的日期字段。

这是我发送到MongoDB的对象,要保存为给定集合中的文档。

var currentDate = new Date();

postData = {
   deviceID: deviceID,
   companyID: companyID,
   userID: userID,
   date: currentDate
};

一切正常,但日期字段只是以字符串格式保存。找不到任何可以为这个问题提供明确答案的问题,如果有问题,请指导我到正确的地方!

2 个答案:

答案 0 :(得分:6)

我通过在我的Node JS API端处理它来解决这个问题。真正的问题是我已经将其作为字符串化的JSON对象发送到API。虽然它被设置为一个新的Date()对象,但它会被字符串化。

所以在我的Node JS API方面,在将它插入MongoDB集合之前,我已经完成了这个,

var data = req.body.postData;
var date = data[0].date;
var dateObject = new Date(date);
date[0].date = dateObject;

这就是诀窍!谢谢你的答案!

答案 1 :(得分:1)

你可以试试这个:

var currentDate = new Date();

postData = {
   deviceID: deviceID,
   companyID: companyID,
   userID: userID,
   date: currentDate.toISOString()
};

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toISOString