Duda con variables locales en Javscript

Publicado en 'Programación' por Debian, 27 Oct 2015.





  1. Debian

    Debian Miembro frecuente

    Registro:
    19 Oct 2014
    Mensajes:
    83
    Likes:
    12




    Hola, tengo este código



    function mensaje1(){

    x = 5;
    // alert(x);

    }



    function mensaje2(){
    //x = 6;
    alert( x*8 );


    }
    mensaje1();
    mensaje2();

    Lo que pasa es que cuando la ejecuto me da resultado 40, o sea, está tomando el valor de la variable en la funcion mensaje1(), y se supone que no lo debería tomar por ser local. Alguien me puede decir por qué?
     


  2. gnox

    gnox Miembro maestro

    Registro:
    3 Ene 2013
    Mensajes:
    793
    Likes:
    252
    Ponle "var" para que sea local.
     
    A Debian le gustó este mensaje.
  3. Debian

    Debian Miembro frecuente

    Registro:
    19 Oct 2014
    Mensajes:
    83
    Likes:
    12
    Con var si funcionó! Estaba probando con let, que permite declarar en forma local, y tampoco me funcionaba ya que es de implementación reciente en ECMAScript 6. Gracias