Javascript For循环未在Model.find()中循环

Javascript For循环未在Model.find()中循环,javascript,node.js,for-loop,express,mongoose,Javascript,Node.js,For Loop,Express,Mongoose,我对for循环有问题。 在DEPOSIT.find(..)函数中,for循环工作不正常。它只获取数组中的最后一个对象。Console正在打印以下内容: TX 5b32f392512404e3319dac2f72a2a0c42a90fe4042cbdea5a6779b5d20a71b02 receive 0.00011719 TX 5b32f392512404e3319dac2f72a2a0c42a90fe4042cbdea5a6779b5d20a71b02 receive 0.00011719

我对for循环有问题。 在
DEPOSIT.find(..)
函数中,for循环工作不正常。它只获取数组中的最后一个对象。Console正在打印以下内容:

TX 5b32f392512404e3319dac2f72a2a0c42a90fe4042cbdea5a6779b5d20a71b02 receive 0.00011719
TX 5b32f392512404e3319dac2f72a2a0c42a90fe4042cbdea5a6779b5d20a71b02 receive 0.00011719
TX 5b32f392512404e3319dac2f72a2a0c42a90fe4042cbdea5a6779b5d20a71b02 receive 0.00011719
但是如果我把
console.log
放在
DEPOSIT.find(…)
方法之外,它会打印我想要的:

TX 0bd0ac0cd357d3fc4486db6861653c1c10cd119c524098fa761076575126f7fa receive 0.00195312
TX f264cf087a3aded73c404df4d6a6915b19859986787f15de6261058006d435e8 receive 0.00295312
TX 5b32f392512404e3319dac2f72a2a0c42a90fe4042cbdea5a6779b5d20a71b02 receive 0.00011719
我错过了什么?我认为问题在于猫鼬的
。找到
方法


代码:

var存款=需要('./DataModels/_存款');
函数存储控件(){
client.listTransactions('*',1000,函数(err,list,resHeaders){
if(err)返回console.log(err);
var Depositoral=列表;
对于(i=0;i0.00000001){
dep.find({'deposit.txid':depositoral[i].txid},函数(err,docs){
如果(docs.length==0){
log(“没有像这样的txid,插入新的”);
//嗯
}
否则{
控制台日志(“tx id变量,确认更新”);
var query={'deposit.txid':depositoral[i-1].txid};
DEPOSIT.update(查询,{'DEPOSIT.confs':存款者[i-1]。确认},函数(err,statu){
------->//问题控制台.log(“TX”+存款人[i-1]。TXD+“”+存款人[i-1]。类别+“”+存款人[i-1]。金额);
});
}
}); 
}
}
}   
}
});
}

您正在关闭
i
变量,该变量在
控制台.log之前发生变化。看看这个问题谢谢,问题应该是。
var DEPOSIT = require('./DataModels/_deposits');
function DepositKontrol () {

client.listTransactions('*', 1000, function(err, list, resHeaders) {
      if (err) return console.log(err);
        var depositolar = list;
          for (i = 0; i < depositolar.length; i++) { 
            if(depositolar[i].category == "receive"){   
              if(depositolar[i].address !=null){
                 if(depositolar[i].amount>0.00000001){      
                    dep.find({'deposit.txid' : depositolar[i].txid}, function (err, docs) { 

                       if(docs.length==0){
                        console.log("no txid like this, insert new ");
                            //OK
                        }
                        else {
                        console.log("tx id var, confirmation update");  
                            var query = {'deposit.txid' : depositolar[i-1].txid};
                            DEPOSIT.update(query, { 'deposit.confs': depositolar[i-1].confirmations },   function (err, statu) { 
         ------->//PROBLEM  console.log("TX "+depositolar[i-1].txid+" "+depositolar[i-1].category+" "+depositolar[i-1].amount);

               });
             }
          }); 
        }
      }
    }   
  }
});

}