Tag: isodate

新的date()在错误的时区

在这篇文章的时候,我目前的时间是2017-01-10T19:23:00.000Z但是new Date()给了我2017-01-11T00:23:19.521Z比我目前的时区提前了5个小时。 这会影响我的数据存储在MongoDB中的方式。 我知道我可以设定时间到5小时前使用 var datetime = new Date(); datetime.setHours(datetime.getHours()-5); 但是我会更喜欢更好的方式来做到这一点。 我试着用这个。 我仍然有同样的时间。 在我的代码的其他部分我得到Tue Jan 10 2017 19:54:30 GMT-0500 (EST)不同于最初的时间。 如果有人能指出这里有什么问题,我会很高兴。

我应该使用什么格式在JSON中存储nodejs中使用的mongodb查询的时间戳记?

我目前正在使用python预处理我的数据到JSON,并通过nodejs插入我的数据到集合: collection.insert(data, {safe:true}, function(err, result) {}); 我的查询也将使用nodejs执行。 我以前使用python datetime.datetime格式化我的时间戳,这就是我的JSON结构: [{ "timestamp" : "2016-08-02 20:30:02", "detail" : blah blah blah },{ "timestamp" : "2016-08-02 20:33:23", "detail" : blah blah blah }, … ] 我试图查询基于时间戳,并根据很多这样的职位创build与pyMongo的ISODate ,我应该使用ISODate我的查询。 所以我的一个尝试是: collection.findOne({ timestamp: new ISODate("2016-08-02T20:33:23.786Z")}) 这个说ISODate是未定义的。 所以基于这个职位,我改变了我的查询: collection.findOne({ timestamp: new Date("2016-08-02T20:33:23.786Z")}) 这个说没有findlogging。 我应该如何将时间戳存储到JSON中? 是new Date("2016-08-02T20:33:23.786Z")正确的方式来检索我的实例吗? 另外,当mongodb查询时间戳时,它会查看确切的小时数和分钟数吗? 我想find确切的年份,月份,date,小时,分钟和秒,就像我的时间戳存储。

格式化来自Mongodb的ISODate

在Mongodb中,我以ISODate格式存储date和时间。 看起来像这样 ISODate("2012-07-14T01:00:00+01:00") 使用nodejs / javascript,我怎样才能显示时间组件,所以我会得到这样的东西 Time : 01:00 我正在使用momentjs使这更容易,但从我可以告诉momentjs似乎支持ISODate格式。 感谢您的帮助。

MongoDB + nodejs:如何查询ISODate字段?

我正在使用nodejs和node-mongodb-native驱动程序( http://mongodb.github.io/node-mongodb-native/ )。 我有一个date属性存储为ISODatetypes的文档。 通过nodejs,我使用这个查询: db.collection("log").find({ localHitDate: { '$gte': '2013-12-12T16:00:00.000Z', '$lt': '2013-12-12T18:00:00.000Z' } }) 它什么都不返回。 为了使其工作,我需要做,而不是: db.collection("log").find({ localHitDate: { '$gte': ISODate('2013-12-12T16:00:00.000Z'), '$lt': ISODate('2013-12-12T18:00:00.000Z') } }) 但ISODate不能在我的nodejs代码中识别。 那么如何通过我的nodejs程序来查询mongodate字段呢? 谢谢