Pesquisa personalizada

Por que usar o “var” nas declarações de variáveis?

19/06/2009 - 12:53 2 comentários

Se você sempre se perguntou o motivo de usar a palavra “var” nas declarações de variáveis em Javascript agora vão ter uma idéia do porquê.

Quando se referimos a uma variável global (uma variável fora das funções) podemos usar ou não a palavra “var”, pois não existe diferença funcional e sim por causa do escopo. Agora se você quer utilizar em uma função uma variável com o mesmo nome de outra que já é declarada como global e não declarar com o “var” você estará alterando a variável global. Se você quer que o valor da variável seja usada apenas dentro do escopo da sua função, então utilize a palavra “var”.

Neste exemplo a função altera o valor da variável global:

<script type="text/javascript">
    var variavelGlobal = 'Variavel Global';

    function alteraValor() {
        variavelGlobal = 'Variavel Global Alterada';
    }

    alteraValor();

    alert(variavelGlobal);
</script>

Neste outro a função apenas declara uma variável de mesmo nome, porém é usada apenas no escopo da função:

<script type="text/javascript">
    var variavelGlobal = 'Variavel Global';

    function alteraValor() {
        var variavelGlobal = 'Variavel Global Alterada';
    }

    alteraValor();

    alert(variavelGlobal);
</script>

Abs,
Chapoo

Autor: Chapolin - Categoria(s): Javascript Tags: , , , , , , ,

2 comentários para "Por que usar o “var” nas declarações de variáveis?"

  1. 28/06/2010 - 22:32 Enviado por: Deco

    Você poderia complementar falando do escopo em objetos e a utilização do “This”

  2. 28/09/2009 - 15:44 Enviado por: Nylson

    Boa, sempre tive uma idéia de como manipular os valores, mas nunca soube exatamente como manipular valores globais e locais, estava quebrando a cabeça aqui tentando fazer uma variável local sair de seu escopo mesmo sem definir!
    Bom como eu sou um cara paciente pra caramba, depois de muito tentar, resolvi ao invés de culpar a linguagem como a maioria faz, resolvi descobri sua funcionalidade.

    Valeu ae, nunca tinha passado por esse blog, está mto bom ae, parabéns!

Deixe um comentário