退出函数(for循环)基于在db中成功插入数据

时间:2015-03-02 10:29:56

标签: javascript mongodb for-loop

我正在尝试根据可用性构建预订时间的应用程序  我正在根据存储在db中的email-id获取device-id,然后我循环设备ID以根据当时哪个设备是免费的插入预订时间

    accounts.findOne({email:mail_back_to}, function(err, res){
    console.log(res.deviceid);
    var dev_id=res.deviceid.split(",");        
    console.log(dev_id);
    for(var i=0;i<dev_id.length;i++){
          console.log(dev_id[i]);
          //dev_details(dev_id[i]);

         async.series([
            function(cb){       
            console.log("in callback");
          var temp=dev_details(dev_id[i]);
          cb('done');
          }],
          function (err,results){
            console.log("callback");
          console.log(results);

           }//function(err,results)   
       );//async.series 



    function dev_details(dev_id){
       dev_checker.findOne({deviceid:dev_id},function(err,res){
       if(res){
        console.log(res);
        console.log("device details are there ");
        return 0;
          }//if
          else {
              dev_checker.insert({deviceid:dev_id,event_name:event_name,event_status:event_status,
                event_description:event_description,event_location:event_location,book_start_time:book_start_time,
                book_end_time:book_end_time,gmt_time:gmt_time,time_zone_offset:time_zone_offset,mail_back_to:mail_back_to},function(err,res){
                  //console.log("values inserted ");
                  if(!res){
                    console.log("some error ");
                  }//if dev_checker.insert
                  else{
                        console.log("values inserted ");
                        console.log(res);


                  }//else dev_checker.insert
                });// dev_checker.insert
           return 1;
          }//else 
       });
    }//dev_details(dev_id)
    break;
     }//for 

             //dev_details(dev_id);   
   });//accounts.findOne()

当我循环throgh它检查每个设备并插入值,如果没有插入值,但我想退出在第一个,第二个任何编号设备上的值插入,我应该怎么做

0 个答案:

没有答案