Node.js Windows上的MongoDb和Macintosh之间的奇怪区别

Node.js Windows上的MongoDb和Macintosh之间的奇怪区别,node.js,mongodb,Node.js,Mongodb,我正在Macintosh上开发node.js/mongodb应用程序,但我也喜欢我的代码在Windows上运行 以下代码适用于Mac,但不适用于Windows: var Server = require('mongodb').Server, Db = require('mongodb').Db; var db = new Db('bookdb', new Server('localhost', 27017)); db.collection('books').insert({ auth

我正在Macintosh上开发node.js/mongodb应用程序,但我也喜欢我的代码在Windows上运行

以下代码适用于Mac,但不适用于Windows:

var Server = require('mongodb').Server,
    Db = require('mongodb').Db;

var db = new Db('bookdb', new Server('localhost', 27017));

db.collection('books').insert({ author: 'bla' });
在Windows上,我必须添加对db.open的调用才能使其正常工作:

var Server = require('mongodb').Server,
    Db = require('mongodb').Db;

var db = new Db('bookdb', new Server('localhost', 27017));

db.open(function(err, db) {
    db.collection('books').insert({ author: 'bla' });
});
有人知道为什么存在这种差异吗


谢谢

在没有先打开DB连接的情况下,这在Mac上是如何工作的?我不知道,但mongodb网站本身包含了这样做的示例: