我使用Node.js构建服务器并使用MongoDB数据库。我不知道如何从数据库返回的结果中获取属性值。格式为JSON,代码为:
exports.queryExams = function(db, data, callback) {
var exams = db.collection("exams");
var stream = exams.find(data).stream();
stream.on("data", function(item) {
callback(item);
});
app.post("/showExam", urlencodedParser, function(req, res) {
var examName = req.body.examName;
console.log(examName);
var data = {examName:examName};
MongoClient.connect(url, function(err, db) {
assert.equal(null, err);
console.log("Connected correctly to server");
examDao.queryExams(db, data, function(result) {
console.log(result);
db.close();
});
});
});
示例数据:
{ _id: 561cc05ba9659d040569ffdf,
examName: 'Test1',
userName: 'Jack',
examId: 3,
array:
[ { examsId: 1, databaseId: 146 },
{ examsId: 2, databaseId: 1168 },
{ examsId: 3, databaseId: 1169 },
{ examsId: 4, databaseId: 147 },
{ examsId: 5, databaseId: 145 } ] }
如何获取属性值?
答案 0 :(得分:0)
你在谈论什么属性?
如果您只想访问结果对象的某个属性,可以使用点样式语法访问它们:
head
或者访问字典语法
中的属性console.log(result.examName);
可以循环数组:
console.log(result["examName"]);
作为旁注:我会在每次处理请求时尝试不打开MongoDB连接,而是尝试打开MongoDB连接一次并回收/重用它。在最好的情况下,使用MongoDB的NodeJS连接器的连接池功能。