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

266
Vistas
cómo usar la variable local de función fuera de esa función en javascript

hola a todos, estoy enfrentando dificultades al usar una variable local de una función fuera de ella, ¿hay alguna forma de hacerlo?

 instance.onmessage = (e) => { let color = e.data return color; };

Obtengo el color de instance.onmessage y tengo que usar este color en el código a continuación.

 visualLinks.lineStyle( 2, link.edgeType === value ? 0xff0000 : color ); 

 instance.onmessage = (e) => { let color=e.data return color; }; visualLinks.lineStyle( 2, link.edgeType === value ? 0xff0000 : color );

Sé que esto está mal, pero tengo que realizar algo como esto solo como referencia, escribí este código.

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

0

No puede usar una variable local de una función fuera de esa función en JavaScript. Podría convertirlo en una variable global en su lugar:

 let color = undefined; window.onmessage = (e) => { color = e.data }; // THIS WILL NOT WORK (because color is still undefined) console.log(color); visualLinks.lineStyle( 2, link.edgeType === value ? 0xff0000 : color );

En el caso de su código que usa onmessage() , su función de devolución de llamada onmessage no se habrá ejecutado (su función no se ejecuta hasta que se recibe un mensaje) a tiempo para cualquier código inmediatamente posterior.

Puede esperar para ejecutar ese código hasta que se reciba el mensaje moviéndolo dentro de la función.

 let color = undefined; window.onmessage = (e) => { color = e.data; console.log(color); visualLinks.lineStyle( 2, link.edgeType === value ? 0xff0000 : color ); };

Si esta es una respuesta demasiado simple para ser útil, puede tener mejor suerte si incluye un ejemplo más realista de lo que está tratando de hacer.

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