db_handle = new mongodb.Db("spa", mongodb_server, {safe: true});db_handle.collection( obj_type, function(outer_error, collection){ collection.find(find_map, fields_map).toArray(function(inner_error, map_list){ callback(map_list); }); });上面的操作為什么要在collection方法里面操作,貌似被包了兩層,有點看不懂哦
2 回答

撒科打諢
TA貢獻1934條經(jīng)驗 獲得超2個贊
NodeJS的精髓在于異步非阻塞,明白了這點很多事情就好理解了。說直白點就是:需要等待的地方就會有一個函數(shù),等這個操作準(zhǔn)備好的時候會調(diào)用這個函數(shù)。所以你這里的兩個函數(shù)其實代表了兩個等待:
連接數(shù)據(jù)庫。這是網(wǎng)絡(luò)操作需要等待,所以第一個函數(shù)是在等這個
獲取結(jié)果。你的查詢需要一定時間才能返回,所以第二個函數(shù)是在等結(jié)果返回
- 2 回答
- 0 關(guān)注
- 847 瀏覽
添加回答
舉報
0/150
提交
取消