Mongoose.js无法从我的文档中获取数组

在我的mongoose模型中,我有这样的用户架构:

var userSchema = mongoose.Schema({ _id : String, username: String, name : String, timestamp : { type : Date, default: Date.now }, admin : Boolean, pages : [String] }); var User = mongoose.model('User', userSchema); 

我试图从这个文件中得到这样的页面数组:

 function isUserPage(userId, pageId, callback) { models.User.find({_id: userId}, function(err, user) { console.log('user pages: ' + JSON.stringify(user[0].pages)); ... }); 

问题是我的console.log正在输出[[object object]]。 我可以看到数据在烟雾(一个基于web的mongodbpipe理查看器)中的数据,但我似乎无法用JavaScript访问它。

先谢谢你。

控制台将始终使用[object object]作为对象打印数组。 pages实际上是一个对象的数组,所以你可以像这样指定页面数组的索引

 console.log(user[0].pages[0]); 

或者如果pages数组包含多个元素,则需要定期进行循环

 for (var i = 0; i<user[0].pages.length; i++) { // use i as an array index console.log(user[0].pages[i]); }