我想访问我的mongo数据库中的一些数据,一些逻辑,并返回某些键的值。例如,假设用户数据如下所示。
[
{
"_id": 1,
"name":"abc",
"age":"25",
"sport":"football"
},
{
"_id": 2,
"name":"def",
"age":"18",
"sport":"boxing"
},
{
"_id": 3,
"name":"ghi",
"age":"22",
"sport":"cricket"
},
]现在我只想返回name和age值。
第一种方法,
const users = await this.User.find({});
let userList = [];
for (let i = 0; i < users.length; i++)
{
let user = users[i];
let t =
{
name : user.name,
age: user.age
}
userList.push(t);
}
return userList;第二种方法,
const users = await this.User.find({}, {"name":1, "age":1, _id:0,
"sport":0});
return users;那么,如果我们忽略代码中的行数,哪种实现更好,为什么?
发布于 2020-07-23 12:01:57
第二种方法更好,因为您可以节省时间和内存。当你使用for循环时,它需要更多的时间。此外,当您在userList中保存用户时,您会复制您的数据。所以它需要更多的时间和内存。
https://stackoverflow.com/questions/63046441
复制相似问题