var coll= '';
function test(callback){
MongoClient.connect(url, function(err, db) {
if(err) throw err;
coll=db
callback(coll);
});
}
test();
console.log(coll)
这是我的代码。当我打印'coll'变量时,它说未定义。如何从回调之外访问变量。目前得到错误回调不是一个函数在nodejs访问变量外面的回调像gloabal vararaible
coll = db;试试这个 – Mahi
已经在MongoClient.connect函数内完成了。 – AJS
回调是异步的,你把'console.log(coll);'放在一个回调函数中。你不能在函数外面调用变量'coll',因为它只会在'MongoClient.connect'回调后定义,因为它是异步的。这就是为什么'console.log(coll)'输出为空| undefined | null – Beginner