JavaScript - La función no me reconoce la variable!

 
Vista:

La función no me reconoce la variable!

Publicado por Diego (7 intervenciones) el 06/03/2020 03:41:13
Hola, tengo un problema y es el siguiente. La consigna es realizar un programa en JS que le diga al usuario su edad dentro de 60 años, es decir en el 2080. Planteado el código de la siguiente manera, no me reconoce la var "edad":

var importando_txt = document.getElementById('txt');
var importando_boton = document.getElementById('boton');
importando_boton.addEventListener('click', mensaje_disparadoPoraddEventListener);
var edad = parseInt(importando_txt.value);

function mensaje_disparadoPoraddEventListener(){
edad+= 60;
document.write('Tendrás ' + edad + ' años!.');
}
//Sin embargo, al meter la variable 'edad' dentro de la función, sí me la lee. Por qué es eso? Es incorrecto declarar tal variable por afuera de la función? Tenía entendido que las variables declaradas dentro de una función sólo son válidas dentro de la misma, pero si es al revés (x fuera), puedo usarlas dentro? Hay un por qué fundamentado? o es una arbitrariedad propia de JS?
Gracias,
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 40
Ha mantenido su posición en JavaScript (en relación al último mes)
Gráfica de JavaScript

La función no me reconoce la variable!

Publicado por Marlon (90 intervenciones) el 06/03/2020 04:58:21
1
var edad = parseInt(importando_txt.value);
Esa linea linea tiene que ir dentro de tu funcion, ya que se esta ejecutando sola y al no haber ningun valor en tu input el valor lo toma como vacio "NaN".
Al estar esa linea dentro de tu funcion cada vez que das click en el boton toma el valor del input.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar

La función no me reconoce la variable!

Publicado por Diego Domene (7 intervenciones) el 07/03/2020 03:37:37
Muchas gracias!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar