Node.js 在构建mongo字符串时添加到字符串的单引号

Node.js 在构建mongo字符串时添加到字符串的单引号,node.js,mongodb,Node.js,Mongodb,我正在尝试构建查询字符串来查找mongodb中的文档。 我为key:value对中的值分配了一个变量 我的代码如下所示 var query = {"_id":orgId[0]}; var name = "_id"; console.log(query); db.collection('orgs') .findOne({query}, function (err,result) { }); query的值如下所示 { _id: '"567a701be4b017"' } 它基本上是

我正在尝试构建查询字符串来查找mongodb中的文档。 我为key:value对中的值分配了一个变量

我的代码如下所示

var query = {"_id":orgId[0]}; 
var name = "_id"; 

console.log(query);

db.collection('orgs')
  .findOne({query}, function (err,result) {

});
query的值如下所示

{ _id: '"567a701be4b017"' }
它基本上是在字符串值周围添加一个引号,因此查询结果为空。我怎样才能度过这一关

谢谢
Sam

您能否验证
orgId[0]
中的值实际上没有一对双引号?也许可以这样做:
console.log(orgId[0]==''567a701be4b017')
。如果它记录
true
字符串本身有额外的双引号,如果它记录
false
,则会发生奇怪的事情。你完全正确。orgId[0]实际上有一对双引号。现在,我在前面的一些步骤中修改了代码,以便orgId[0]没有双引号字符串。非常感谢。您能否验证
orgId[0]
中的值实际上没有双引号?也许可以这样做:
console.log(orgId[0]==''567a701be4b017')
。如果它记录
true
字符串本身有额外的双引号,如果它记录
false
,则会发生奇怪的事情。你完全正确。orgId[0]实际上有一对双引号。现在,我在前面的一些步骤中修改了代码,以便orgId[0]没有双引号字符串。非常感谢。