我的应用程序有几个日期选择器,对于他们我使用日期格式为DD / MM / YYYY 然后我将这个日期发送到我的nodejs后端,后端将数据对象存储在mongodb中。
将来我的应用程序需要根据日期范围过滤数据。出于这个原因,我不想将日期存储为字符串。相反,我想以允许我对集合执行基于范围的查询的格式存储它们。
考虑到我无法更改前端的日期格式这一事实,我最好的选择是什么?
如果有人能够为我清楚地理解这个概念提供详细的答案,我们将非常感激。
答案 0 :(得分:1)
在你的nodejs后端,你可以转换你的字符串日期" DD / MM / YYYY"将日期对象放入mongodb之前。像这样的东西:
var dateStr = "15/12/2013"; // the 15th of Dec, 2013
var dateArr = dateStr.split('/');
// new Date(YYYY, MM, DD); // note that month starts from 0, so
// you have to subtract 1
var date = new Date(dateArr[2], dateArr[1] - 1, dateArr[0]);
console.log(date); // output: Sun Dec 15 2013 00:00:00 GMT-0800 (PST)
此日期现在是一个Date对象,您可以将其保存在mongodb中,并在以后需要时按日期范围查询