Como soy un novato en JavaScript, comencé a aprenderlo, pero me quedé atascado solo al principio. Estoy siguiendo a Mozilla Tutorial y tengo un problema con el alcance variable en JavaScript. Tengo un código:Problema con el alcance de la variable
var myvar = "my value";
var zmienna = "string";
(function() {
alert(myvar);
alert(zmienna);
})();
(function() {
alert(myvar); // undefined
var myvar = "local value";
alert(zmienna);
})();
En el tutorial, he leído que las variables de JavaScript no son visibles desde los bloques de funciones. Bueno, las primeras dos alertas dicen valores correctos. Es extraño, porque la tercera alerta dice "indefinido", a pesar de que nada ha cambiado desde el bloque de funciones anterior. El cuarto, una vez más, imprime el valor correcto.
¿Alguien podría explicarme qué pasa aquí? Estaría muy contento, porque el tutorial no dice nada más al respecto.
_ "He leído que las variables JavaScript no son visibles desde bloques de funciones. "_ ¿Dónde está eso en el tutorial? Esa oración simplemente no tiene sentido. –