只返回键我有一个文件如下:猫鼬:从文件
var data={"john:"friend",
"fruit":"banana",
"tv":[{"livingroom":"led",
"bedroom":"lcd"
"fruit":"banana"}]}
,我试图如下返回其所有独特的按键阵列:
["john","fruit,livingroom,bedroom]
所以我有下面的代码:
var mykeys=[];
database.find({},function(result){
result.forEach(function(each){
for (key in each){
mykeys.push(key)
};
}});
但这返回一大堆我不需要像对象:
[$__, isNew, errors, _doc, $__original_save, save, _pres, _posts....]
是否有反正我可以摆脱这些不在文件中的密钥? 我知道这mapreduce
这里的答案MongoDB get the names of all the keys in a MongoDB collection但我不知道如何将它翻译成猫鼬。 AFAIK猫鼬不支持runCommand。
的[MongoDB中获取集合的所有键的名称(http://stackoverflow.com/questions/2298870/mongodb-get-names-of-all-keys-in-collection) –
可能的复制@ Bertrand Martel:我的确看过这个解决方案,但它对于我想要的来说似乎太复杂了。我不需要在集合中找到唯一的键,只需要在文档中找到没有虚拟物的所有键。另外我不太确定如何在猫鼬中实现mapreduce。 – qts
你的意思是你想从你的集合中的一个文档(任何文档)中提取密钥? –