数组结果如下所示
[
{
_id: 56fe444d6ce2226431f5388c,
name: 'admin',
email: 'admin@gmail.com',
password: '$2a$10$Wz34L5QZ6ACQIP.Q2WOJLuOSvs0aHQbSO1bhhOpiiXDOaN/AIF8U2',
occasiontype: 'Anniversary',
date: Mon Apr 18 2016 00:00:00 GMT+0530 (India Standard Time),
__v: 0
}
]
router.post('/find-registry', function(req, res){
var uEmail = req.body.email;
var findUserId = function(db, callback) {
var cursor =db.collection('users').find({email:uEmail}).toArray(function(err, docs){
if(err){
callback(new Error("Some problem"));
} else {
callback(null,docs);
}
});
};
MongoClient.connect(url, function(err, db) {
assert.equal(null, err);
findUserId(db, function(err,docs) {
db.close();
console.log(docs);
});
});
});
这里显示数组结果的console.log(docs)
。但我只需要名称。我怎么得到它?我尝试过console.log(docs[name])
,但显示未定义。
答案 0 :(得分:3)
你可以这样 -
docs[0].name
您必须访问docs数组中的第一个对象,然后访问该对象的name属性。
<强>更新强>
您只需使用 findOne()方法,然后像这样访问name属性 -
docs.name
答案 1 :(得分:2)
您应该使用cat
。 docs[0].name
是一个数组,每个条目(在这种情况下只有一个)是一个具有多个属性的对象(包括docs
)。
答案 2 :(得分:-1)
查找数组中的每个名称我建议映射到一个函数,该函数查找数组中每个对象的名称。当你在数组中传递多个对象时,这比在数组中选择第0个元素更具可扩展性和容错性(这就是它首先在数组中的原因,对吧?)