所以,这让我疯了,我不确定这是一个错误,还是我错过了一些明显的东西。有人可以向我解释为什么在mongo 2.0.2中将以下语句添加一个月
# mongo
MongoDB shell version: 2.0.2
> new Date()
ISODate("2012-02-19T04:58:56.988Z")
> new Date(2012, 02, 19, 04, 58, 56)
ISODate("2012-03-19T04:58:56Z")
> new Date(2012, 01, 19, 04, 58, 56)
ISODate("2012-02-19T04:58:56Z")
注意我指定日期时如何添加月份。 Whiskey Tango Foxtrot?
答案 0 :(得分:4)
MongoDB使用JavaScript作为其界面语言。 JavaScript Date构造函数中的month
基于零。来自fine manual:
<强>
month
强>
表示月份的整数值,从1月的0开始到12月的11。
请注意1月的 0 。这种情况是MongoDB倾向于使用自己的ISODate
function而不是new Date
的原因之一:
[...] ISODate是一个围绕Date构造函数的瘦包装器来修复它的一些缺点。它返回一个普通的Date对象,其中包含javascript Date方法支持的所有常规方法。