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方法里面操作,貌似被包了两层,有点看不懂哦
第一层的回调函数中拿到集合,
第二层集合查询,回调得到查询结果
3楼正解,已点赞
NodeJS的精髓在于异步非阻塞,明白了这点很多事情就好理解了。说直白点就是:需要等待的地方就会有一个函数,等这个操作准备好的时候会调用这个函数。所以你这里的两个函数其实代表了两个等待:
连接数据库。这是网络操作需要等待,所以第一个函数是在等这个
获取结果。你的查询需要一定时间才能返回,所以第二个函数是在等结果返回
谢谢邀请。我说下我个人的理解吧!mongodb
作为非关系文档型数据库,我对于操作mongodb
一直当成json
的形式,一级级的取数据就可以了。给人的感觉就是一层层的。