Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

190
Vistas
Los valores devueltos en funciones asíncronas están vacíos

Veo que ha habido otras publicaciones relacionadas con este tema, pero parece que no puedo encontrar una solución que ayude a mi situación. Tengo dos funciones asíncronas. Uno está devolviendo un valor que se utilizará en la otra función. Por alguna razón, el valor que se usa se lee como una variable vacía. No sé de qué otra manera hacer que esto funcione, pero cualquier perspectiva sería apreciada.

Código

 var stockSymbol = []; async function read_fortune_500() { try { const { data } = await axios({ method: "GET", url: "https://en.wikipedia.org/wiki/List_of_S%26P_500_companies", }) const $ = cheerio.load(data) const elemSelector = '#constituents > tbody > tr > td:nth-child(1)' $(elemSelector).each((parentIndex, parentElem) => { if (parentIndex <= 9){ $(parentElem).children().each((childIndex, childElem) => { const tdValue = $(childElem).text() if (tdValue) { stockSymbol = tdValue } }) console.log(stockSymbol) } }) } catch (err) { console.error(err) } return stockSymbol; } async function collect_stocks(stockSymbol) { stockSymbol = read_fortune_500() const stockResult = await yahooStockPrices.getCurrentData(stockSymbol); console.log(stockResult); } collect_stocks(stockSymbol)

Error

 TypeError: Cannot read properties of undefined (reading 'split')

Si ejecuto la primera función, puedo obtener valores registrados en la consola, por lo que sé que los valores están allí, pero no estoy seguro de dónde me equivoco al pasarlos a la segunda función.

about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

Definió read_fortune_500 como una función asíncrona, por lo que devuelve una promesa. Probablemente quisiste await en collect_stocks .

 async function collect_stocks(stockSymbol) { stockSymbol = await read_fortune_500() const stockResult = await yahooStockPrices.getCurrentData(stockSymbol); console.log(stockResult); }
about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda