Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/40.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 获取包含所有对象特定值的数组_Javascript_Node.js_Mongodb_Mongoose - Fatal编程技术网

Javascript 获取包含所有对象特定值的数组

Javascript 获取包含所有对象特定值的数组,javascript,node.js,mongodb,mongoose,Javascript,Node.js,Mongodb,Mongoose,我有以下代码: <db.collection>.find({ id : { $exists: true } }) 返回:[2116223712] PS:我曾想过使用一种重复结构来遍历所有属性并推送一个数组,但我认为这是不必要的,而且我认为这不是最好的方法 let数据=[ {u id':'-','id':'21162'}, {u id':'-','id':'23712'} ]; 让result=data.map(item=>item.id); 控制台日志(结果)有两个选项可以实现这

我有以下代码:

<db.collection>.find({ id : { $exists: true } })
返回:
[2116223712]


PS:我曾想过使用一种重复结构来遍历所有属性并推送一个数组,但我认为这是不必要的,而且我认为这不是最好的方法

let数据=[
{u id':'-','id':'21162'},
{u id':'-','id':'23712'}
];
让result=data.map(item=>item.id);

控制台日志(结果)有两个选项可以实现这一点:

第一个是让Mongoose/MongoDB使用
projection
param过滤它们:

//执行,名字像john一样,只选择“name”和“friends”字段
等待MyModel.find({name:/john/i},'name friends').exec();
这是文档中的一个示例,如下所示:


另一个选项是Sabbir建议的,但它要求将Mongoose返回的整个文档列表加载到内存中,并一次处理一个元素。

在数组上使用.map并检索id,在线上有无数示例。。。
{_id: ---, id: 21162 }
{_id: ---, id: 23712 }