2014-05-20 266 views
0

我需要做一個特定的算法,但我有一個For循環的問題。第一個問題是,我不能沒有第一端做出的兩個執行For循環(一個在另一個內),不等待第二個完成node.js for for循環裏面的循環

for(i = ports_default; i <= ports_final; i++) { 
     for(j=ports_default; j<= (ports_default + num_ports) ;j++){ 
      client.portUnmapping({public: j},function (err){ 
       if (err) { 
        callback(err); 
       } 
       else {   
        console.log('Port ' + ports_default + ' unmapped'); 
        ports_default= ports_default + 1; 
        if(ports_default == j) { 
         callback(); 
        } 
       } 
      });     
     } 
     ports_default = ports_default + num_ports + 1; 
} 

我已經試過了異步模塊,但找不到這個問題的適當的解決方案,第二個問題是,節點不會等待來自portUnmapping函數的響應,我的問題是,如果這是一種方式,至少迫使它以某種方式等待兩個For循環結束(按正確的順序不完成第一個和第二個)。

回答