在匿名函数中导出参数值

时间:2012-03-04 20:07:33

标签: javascript mongodb closures

使用mongojs访问mongodb数据库,以下行检索用户:

db.users.find({}, function(err, some_users) {});

找到的用户存储在some_users参数中。

然后,我想在db.users.find()调用之后使用some_users,而不仅仅是在anoymous函数中。

我试过玩闭包,但没有成功。

有什么想法吗?

1 个答案:

答案 0 :(得分:2)

如果要在调用some_users后访问find,则应初始化变量以将结果保存在匿名函数的范围之外。 e.g。

var someUsers;
db.users.find({}, function(err, some_users) {someUsers = some_users});
//Do things with the filled in someUsers

正如nnnnnn在评论中指出的那样,假设find是异步通话,someUsers将在调用find后立即填写。{/ p>