在javascript中创build一个ISOdate对象
我有一个mongo数据库设置。 在mongoDb中创build一个新的date对象以ISO格式创build一个date对象,例如: ISODate("2012-07-14T00:00:00Z")
我正在使用node.js连接到mongo数据库并查询数据库。 当我创build一个新的date对象( new Date()
)在JavaScript中它创build一个javascriptdate对象例如: Wed Mar 06 2013 14:49:51 GMT-0600 (CST)
有没有办法在JavaScript中创build一个ISOdate对象,以便我可以直接发送对象到mongoDb并执行date查询
我可以在mongoDb中执行下面的查询
db.schedule_collection.find({ start_date: { '$gte': new Date(2012, 01, 03, 8, 30) } })
但是当我从节点发送javascriptdate对象时不能执行
mongodb食谱提供了一个python示例来查询使用datetime模块的mongo数据库,但是没有提供任何使用javascript的例子。
任何帮助表示赞赏。 提前感谢你
尝试使用ISOstring
var isodate = new Date().toISOString()
另请参阅: MDN上的方法定义 。
在节点中,Mongo驱动程序会给你一个ISOstring,而不是对象。 (例如: Mon Nov 24 2014 01:30:34 GMT-0800 (PST)
)所以,简单地把它转换成js Date by: new Date(ISOString);
试试下面:
var temp_datetime_obj = new Date(); collection.find({ start_date:{ $gte: new Date(temp_datetime_obj.toISOString()) } }).toArray(function(err, items) { /* you can console.log here */ });
我解决了这个问题在node.js中实例化一个新的Date对象:…
在JavaScript中,将Date()。toISOString()发送到nodejs:…
var start_date = new Date(2012, 01, 03, 8, 30); $.ajax({ type: 'POST', data: { start_date: start_date.toISOString() }, url: '/queryScheduleCollection', dataType: 'JSON' }).done(function( response ) { ... });
然后使用ISOString在nodejs中创build一个新的Date对象:..
exports.queryScheduleCollection = function(db){ return function(req, res){ var start_date = new Date(req.body.start_date); db.collection('schedule_collection').find( { start_date: { $gte: start_date } } ).toArray( function (err,d){ ... res.json(d) }) } };
注意:我正在使用Express和Mongoskin。
- 为什么开发者需要PhantomJS而不是仅仅使用一些testing框架呢?
- React input defaultValue不会更新状态
- 最简单的方法来检查string是否为空或空
- CoffeeScript中的私人成员?
- 我怎样才能完全禁用Rails 3.1应用程序中的CoffeeScript?
- 在coffeescript写一个jquery插件 – 如何获得“(函数($)”和“(jQuery)”?
- 通过Node.js将base64编码的图像上传到Amazon S3
- CoffeeScript:对象初始化器中的Getter / Setter
- CoffeeScript是否允许JavaScript风格的==相等语义?