Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

351
Visualizações
¿Por qué este código produce un diccionario vacío y cómo puedo solucionarlo?

Estoy tratando de leer un archivo y dividirlo en varios caracteres. Si coloco la declaración de registro dentro del bloque rl.on, obtengo algunos resultados, pero por alguna razón, el diccionario vuelve a estar vacío cuando finaliza el bloque.

 let rl = readline.createInterface({ input: fs.createReadStream('Spanish.txt'), }) 

 let dict={}; let arr1=[]; let arr2=[]; rl.on(`line`, (line)=>{ if (!line.startsWith('#')){ arr1=line.split('\t'); if (arr1[1]!=undefined) { arr2 = arr1[1].split('[').join(',').split('/'). join(',').split('(').join(',').split(','); dict[arr1[0]]=arr2[0]; } } }); console.log(dict);

about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

Las líneas se leen de forma asincrónica, por lo que cuando registras tu dict , el procesamiento aún no se ha completado.

Puede escuchar el evento declose para determinar si el archivo se ha leído por completo:

 rl.on('close', () => console.log(dict));

Mejor aún, use un enfoque basado en async / await como se detalla en la documentación de Node.js.

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda