2017-08-21 4 views
0

以前の繰り返しの結果が必要なノードJSでループを実行する必要があります。私はこれを達成することになっていますどのように前の繰り返しの結果を必要とするノードjsのループ

function jsonParser(txt_file, cb) { 
var perc = 0; 

lines = txt_file.split('\n'); 

insert_communication = 'INSERT INTO communication (account_id, contact_id, type_com_id, coin_id, com_datetime, ' + 
    'destination_key, destination_st, duration, cost, description, discount) VALUES '; 

insert_internet = 'INSERT INTO internet_data (account_id, contact_id, type_com_id, coin_id, com_datetime, ' + 
    'duration, cost, description, discount) VALUES '; 

for (let i = 2; i < lines.length; i++) { 

    readTextFile2(lines[i], function (cb) { 
     if (cb[0] == "communication") 
      insert_communication += cb[1] + ','; 
     if (cb[0] == "internet") 
      insert_internet += cb[1] + ','; 


    });   
} 

cb(insert_communication); 

}

?私たちは、あなたが話しているの結果何を知っているので

おかげ

+0

あなたが繰り返しのいくつかのコードを追加することはできますか?それは計算ですか?出力?一連の関数呼び出し?また、この質問に「非同期」というタグを付けましたが、実際にどの部分が指し示されているのかを知ることは難しいです。 –

+0

これは他のプログラミング言語とまったく同じ方法で行います。あなたは何を試してみましたか、なぜその仕事をしなかったのですか? – Metareven

+0

Javascriptのマニュアルがあります!あなたはそれを見ましたか? – RiggsFolly

答えて

0
for (let i = 2; i < lines.length; i++) { 

     const previous = lines[i - 1 ]; 
     const hasPrevious = !!previous; 

     if(hasPrevious) { 
      //ok you have a previously value, now you could use it 

     } 

     readTextFile2(lines[i], function (cb) { 
       if (cb[0] == "communication") 
        insert_communication += cb[1] + ','; 
       if (cb[0] == "internet") 
        insert_internet += cb[1] + ','; 


     }); 
    } 
関連する問題