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

254
Views
node.js tratando de pasar variables como lo haría en python

Soy nuevo en javascript, estoy tratando de pasar el resultado de una función anidada al resto de la función principal. ¿quizás?

Tengo documentos en una colección mongodb e información de la empresa en otra. Así que estoy tratando de emparejarlos como esta parte del código, pero no está haciendo lo que estoy tratando de hacer. Creo que claramente me estoy perdiendo algo sobre javascript y la forma en que funciona.

data es una lista de documentos y sus variables.

 Data.find(arg_object, function (err, data){ if (err){ console.log(err); } else { console.log("LENGTH", data.length) for (i in data) { Companies.find({_id: data[i]['_id']}) .then(companies => { console.log("Company Name:") console.log("NAME >>>> >>>> ", companies[0]['name']); return companies }) .catch(err => { console.log(err); }) search_reply = { '_id': data[i]['_id'], 'title': data[i]['title'], 'url': data[i]['url'], 'release_date': data[i]['release_date'], 'document_date': data[i]['document_date'], 'name': companies[0]['name'], } answers[i] = search_reply } return res.json(answers); } })
about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

Puede mover toda su lógica search_reply dentro de la promesa y luego devolver la llamada. La otra solución que podría ser más fácil es usar async/await para manejar Promises. Primero supongamos que su función principal se llama getSearchResults , por lo que, en función de eso, su código se vería así:

 async getSearchResults() { for (i in data) { try { const companies = await Companies.find({ _id: data[i]['_id'] }); console.log("Company Name:") console.log("NAME >>>> >>>> ", companies[0]['name']); search_reply = { '_id': data[i]['_id'], 'title': data[i]['title'], 'url': data[i]['url'], 'release_date': data[i]['release_date'], 'document_date': data[i]['document_date'], 'name': companies[0]['name'], } answers[i] = search_reply } catch (err) { console.log(err); } } }

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!