节点中的Mongo条件条件

我希望能够有一个可以基于date进行过滤的API。 所以你通过如下的东西:

dob: { date: new Date("5/22/1955"), filter: 'lt' } 

这应该返回DOB小于date的所有logging,但是如果在filter中传递了“gte”,则应该返回DOB大于或等于date的所有logging。

显然,Mongo的疑问是

 dobQuery = {dob: {gte: data.dob.date}}; dobQuery = {dob: {lt: data.dob.date}}; 

但是,我怎么能做这个条件呢? 我想写这样的东西,但当然这是行不通的:

 dobQuery = {dob : {"$" + data.dob.filter: data.dob.date}}; 

我怎样才能写出来?

使用括号表示法以编程方式构builddobQuery

 dobQuery = {dob: {}}; dobQuery.dob['$' + data.dob.filter] = data.dob.date;