gpt4 book ai didi

javascript - 在 Meteor 应用程序中将名称映射到 id

转载 作者:行者123 更新时间:2023-12-03 09:04:24 25 4
gpt4 key购买 nike

在 Meteor 中,我已经订阅了一个出版物,该出版物出版了许多文档集。每个文档都有 _idname。我在应用程序的某个位置打印所有这些文档。

在我的应用程序的其他地方,我有一些 ID。但我不想打印 ID,而是想打印与 id 对应的名称。

我可以简单地使用

for (var i=0; i<idList.length; i++) {
doc = CollectionName.findOne(idList[i]);
console.log(doc.name);
}

但这会导致性能不佳吗?我想,既然我已经订阅了整个集合,那么为每个 id 执行 mongodb 调用不会花费更多。我错了吗?

最佳答案

在客户端上,您的所有查询都是针对MiniMongo进行的。包含服务器发布的文档的数据库(MongoDB 的客户端内存复制)。因此,它确实非常经济高效,因为您只需在客户端搜索文档,而无需调用服务器。

关于您的代码,我认为使用 find() 然后使用 map() 会更有效:

var namesArray = CollectionName.find().map(function(document) {
console.log(document.name);
return document.name;
});

使用 find() 时,您只需执行一个返回游标的查询,然后 map() 函数将遍历游标中的所有文档并执行任何操作您想要对每个文档进行的操作,例如在控制台中打印名称并将其返回。此外,所有返回的值都将添加到单个数组(此处称为 namesArray)中,您可以在其他地方重用该数组。

关于javascript - 在 Meteor 应用程序中将名称映射到 id,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32227478/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com