在MongoDb中应用过滤器
我需要在嵌入式文档中的mongoDb中应用过滤器,以便如何进行查询,如
示例:
var query = {
_id:userId,
'match.Id':matchId,
'match.userId':userId1
}
现在我想应用过滤器假设
案例1:我的查询应该像
var query = {
_id:userId,
'match.Id':matchId,
}
案例2:
var query = {
_id:userId,
'match.userId':userId1
}
可能有很多这样的案例
所以我的问题是如何在node.js / javascript
中创建这个查询对象我的工作:我可以在对象中创建多个键,但是如下所示创建键不起作用
var query={}
query._id:userId // works
query.'match.userId':matchId // error
query.match.userId:matchId //error
尝试下面的代码得到了所需的输出,但它带有方括号,但arr的类型是对象
var arr = [];
arr[ 'key3.abc' ] = "value3";
arr[ 'key2.abc' ] = "value3";
console.log(arr)//[ 'key3.abc': 'value3', 'key2.abc': 'value3' ]
期望的输出:
{'key3.abc': 'value3', 'key2.abc': 'value3'}
答案 0 :(得分:4)
将[]
更改为{}
var obj = {};
obj[ 'key3.abc' ] = "value3";
obj[ 'key2.abc' ] = "value3";
console.log(obj) // { 'key3.abc': 'value3', 'key2.abc': 'value3'}
N.B。当密钥包含[]
时,我们可以按方(special character
)表示法分配或访问JavaScript对象,例如空间,点等。