JavaScript日期对象在浏览器中包含“ T”字符,但在MongoDB中不包含

时间:2018-08-11 17:22:18

标签: javascript node.js mongodb date express

我已经看过this个帖子,但对发生的事情并没有太多了解。

我有一个mongo服务器,该服务器存储有关类,它们见面的时间和日期以及什么不见的信息。我还有一个快递服务器,可以与之交互并返回该数据。

当我在Robo3T(mongo数据查看器)中查看数据时,它是格式化的-应该是这样- 2018-09-07 04:00:00.000Z 但是,当数据返回到服务器时,它像这样返回:2018-09-07T04:00:00.000Z

是什么原因造成的?在显示数据之前,我绝不会尝试对其进行格式化。我还检查了服务器输出,该输出以相同的方式返回:

startDate: 2018-09-07T04:00:00.000Z

我想我的问题是,为什么会这样?这会影响我根据日期范围从mongo查询结果的功能吗?任何帮助将不胜感激,谢谢。

1 个答案:

答案 0 :(得分:1)

Robo 3T只是以这种方式显示日期。这并不意味着它实际上是以这种方式存储的。当您将视图切换到“文本模式”时,您将看到它实际上是ISODate("2018-09-07T04:00:00.000Z")(带有T)。

此格式实际上是JavaScript中使用的日期格式字符串。是的,T是必需的。参见What are valid Date Time Strings in JavaScript?