db.student.find().forEach(function(x){
// 正常情况下,获取Document的field如下
// 获取学生姓名
print(x.stuName);
// 获取学生年龄
print(x.stuAge);
});
// 但是我现在有一个需求,就是这个fieldName是动态变化的
// 比如我需要根据传过来的fieldName,获取不同的field值
// 比如我调用这个函数的时候传了字符串"stuName"过来
function handleField(fieldName){
db.student.find().forEach(function(x){
// 打印出stuName
print(fieldName);
// 打印出 undefined
print(x.fieldName);
});
}
为什么第二种方法不成功,是不是x.fieldName语句,这个fieldName只能指定死,不能根据动态传入的值来获取对应的field。
print(x[fieldName]);
上記は基本的な JS の問題であり、mongodb とは関係ありません。