当前位置:嗨网首页>书籍在线阅读

03-理解回调函数

  
选择背景色: 黄橙 洋红 淡粉 水蓝 草绿 白色 选择字体: 宋体 黑体 微软雅黑 楷体 选择字体大小: 恢复默认

19.1.1 理解回调函数

在接下来的几小节,您将看到Node.js MongoDB对象的各种方法。这些方法大多接受一个回调函数作为参数。本章只是想提醒您,在Node.js中,一切都是异步的,因此当您读写数据库,并想根据读写情况执行其他操作时,这些操作必须在回调函数中进行。

例如,下面的代码显示对一个Collection对象执行findOne()操作得到的结果。注意到显示文档的代码嵌套在传递给方法connect()、collection()和findOne()的回调函数中:

mongo.connect("mongodb://localhost/", function(err, db) {
   var myDB = db.db("words");
   myDB.collection("word_stats", function(err, collection){
      collection.findOne(function(err, doc)){
         console.log(doc);
      });
   });
});

在本章的所有方法中,回调函数的第一个参数是一个错误(如果发生了的话)。如果第一个参数对应的是一个值,您可以检查该错误。第二个参数通常是操作执行后的结果,比如对find()来说,结果是Cursor对象;对于count()来说,结果是一个数值。