Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

185
Views
Espere dentro de la función createreadStream sin enviar los datos obtenidos a una matriz, sino que va a la siguiente iteración y vuelve a buscar

Aquí estoy tratando de llamar a cada fila en un archivo csv y dentro de ese ".on" podemos acceder a cada fila, así que estoy obteniendo algunos datos allí y luego insertando los datos obtenidos en una matriz, pero veo que llama a la búsqueda y luego va directamente a la siguiente fila en lugar de enviar los datos a la matriz. ¿Alguna idea de por qué no está enviando los datos a la matriz y luego pasa a la siguiente iteración?

 var dataArray = []; fs.createReadStream('./data.csv') .pipe(csv()) .on('data', async function (row) { let data = await fetch(row.data); console.log(data); row.flag = data; dataArray.push(row); }) .on('end', async function () { console.log('data', dataArray); var result = json2csv(dataArray); fs.writeFileSync('./file.csv', result); });
about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

Así es como lo hice, primero empujé todo el formulario de datos de fila ("datos") dentro de createreadstream en una matriz "arr". Luego, como sugirió @ChrisG, creó una matriz llamada promesa e introdujo todas las promesas en la matriz. Y al final llamado Promiss.all(promises[]).entonces obtuve lo que quería. @Bravo

 let arr = []; let promises = [] fs.createReadStream(path) .pipe(csv()) .on('data', async function (row) { arr.push(row) }) .on('end', function () { console.log("data",arr.length) arr.forEach(async e => { let msg dataArray.push(e) promises.push(fetch(msg)) } }) Promise.all(promises).then((data) => { console.log("data",dataArray) data.forEach((e, index) => { let data = e.data dataArray[index].data = data }) var result = json2csv(dataArray); fs.writeFileSync(path, result) }) }) }
about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!