Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
MongoDB/Javascript:ReferenceError:lastname未定义_Javascript_Mongodb - Fatal编程技术网

MongoDB/Javascript:ReferenceError:lastname未定义

MongoDB/Javascript:ReferenceError:lastname未定义,javascript,mongodb,Javascript,Mongodb,在我的数据库集合中,我有一对{lastname:“Smith”,name:“John”},我想用以下代码找到它: db.collection.find({'$where':'function(){return lastname=="Smith";}'}) 此代码应返回类似于true或1的值,但它会返回一个错误: Error: error: { "ok" : 0, "errmsg" : "ReferenceError: lastname is not define

在我的数据库集合中,我有一对
{lastname:“Smith”,name:“John”}
,我想用以下代码找到它:

db.collection.find({'$where':'function(){return lastname=="Smith";}'})
此代码应返回类似于true或1的值,但它会返回一个错误:

Error: error: {
        "ok" : 0,
        "errmsg" : "ReferenceError: lastname is not defined :\n_funcs1@:1:22\n",
        "code" : 139
因为它是mongodb查询中的javascript,所以问题可能是javascript没有被解释。。。有什么想法吗


干杯

为什么不
db.collection.find({lastname:“Smith”})
?使用
$where
在计算上非常昂贵,通常被认为是最后的选择,因为它的执行方式和产生的性能。因为我想在网站(root-me.org)上验证一个挑战,我不得不使用此结构。您需要使用
this
obj
在JavaScript表达式或函数中引用文档。谢谢!!它起作用了!!