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