javascript - 检查mongodb中是否存在item(多次查询)

标签 javascript node.js mongodb mongoose

var exist_item = [];
$scope.Items.ForEach(function(item){
   Item.findOne({"_id":item.id}, function(err,response){
     exist_item.push(response.id);
   });
});

我只是觉得编写这种代码很糟糕,我认为有更好的方法可以检查 mongodb 或 moongse 中是否存在多个项目。

最佳答案

您可以使用 $in 运算符来实现:

var existingItems;
var ids = $scope.Items.map(item => item.id);

Item.find({ _id: { $in: ids }}, (err, results) => {
    if (err) {
        // TODO: process error
    }
    existingItems = results.map(item => item._id);
});

关于javascript - 检查mongodb中是否存在item(多次查询),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36916186/

相关文章:

MongoDB - 唯一索引与复合索引

javascript - jQuery 从顶部获取当前 View 位置

javascript - www 和非 www 的 Nodejs session 问题

javascript - 当我向我的网站注册新用户时,出现此错误“secretOrPrivateKey 必须具有值”! Node.js

javascript - 如何在文本框中添加 <script>alert ('test' );</script> ?

node.js - meteor JS : Generating emails from templates server-side

node.js - 带有 docker 的 Mongo 副本 Node

javascript - AngularJS input[number] 不会将 "5008"转换为数字

javascript - 无法从 Firebase 数据库 Node.js/JavaScript 获取数据

javascript - 在更改选择值时,显示某些 div 内容