我有一个包含文档的集合“A”:
{_id:1, a1: "degree"}
{_id:2, a2: "score"} ...
我需要将该集合转换为键值结构,例如:
{_id: x, {name: "a1", label: "degree"} }
{_id: y, {name: "a2", label: "score"} }
问题是集合 A 中的每个文档都可以有不同的字段名称。
要获取字段名称,我可以使用 javascript,如下所示,
但是仍然无法在不知道字段名称的情况下找到获取每个字段值的方法。
var arr = new Array()
var x = 0
var cur = db."A".find()
while( cur.hasNext() ) {
var i = 0
for( var field in cur[x] ) {
arr[i] = field; // get field name
i++;}
db."B".save( { "name": arr[1], //fieldname
"label": //how to put value without knowing field name?
)
x++;
}
你知道如何在不知道名称的情况下获取字段值吗?
谢谢。
最佳答案
我不确定这是否是您真正想要的,但希望对您有所帮助。
试试这个:
var obj = [
{_id: x, {name: "a1", label: "degree"} },
{_id: y, {name: "a2", label: "score"} }
];
for (index in obj) {
for (key in obj[index]) {
console.log(key);
console.log(obj[index][key]);
}
}
关于javascript - Mongodb:如何在不知道字段名称的情况下读取值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37011234/