MongoDB ISODate返回不正确的日期和月份

问题描述 投票:0回答:1

我正在尝试获取将记录/文档插入MongoDB集合的日期。我正在使用ObjectId.getTimestamp()函数从日期获取时间戳。

该函数返回一个ISODate对象,然后遍历此question,看起来ISODate只是本机JavaScript Date的包装。但是,当我在Date对象上使用getDay()getMonth()方法时,尽管小时,分钟和年份似乎很好,但返回的结果不正确。

用法(Mongo shell)-

ISODate

据此-

> db.user.count()
1
> db.user.findOne()._id.getTimestamp()
ISODate("2018-10-26T12:52:31Z")
> db.user.findOne()._id.getTimestamp().getDay()
5
> db.user.findOne()._id.getTimestamp().getMonth()
9
> db.user.findOne()._id.getTimestamp().getFullYear()
2018
> db.user.findOne()._id.getTimestamp().getHours()
12
> db.user.findOne()._id.getTimestamp().getMinutes()
52
>

日期是> db.user.findOne()._id.getTimestamp().getDay() 5 > db.user.findOne()._id.getTimestamp().getMonth() 9 ,月份是5,但应该分别是926

屏幕截图-

10

我在做什么错?

mongodb date mongo-shell isodate
1个回答
0
投票

[enter image description here返回星期几,但是Date.getDay()返回星期几。

Date.getDate()

对于Date.getMonth(),JavaScript db.user.findOne()._id.getTimestamp().getDate() 26 返回值0-11,即1月0日,2月1日等。10月9日。

Date

LINK db.user.findOne()._id.getTimestamp().getMonth() + 1 10

© www.soinside.com 2019 - 2024. All rights reserved.