只返回鍵我有一個文件如下:貓鼬:從文件
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
你的意思是你想從你的集合中的一個文檔(任何文檔)中提取密鑰? –