Formas de declarar variáveis em JavaScript

Como declarar variáveis utilizando var, let e const.

Por Fernando Belém

Atualizado em:


Formas de declarar variáveis em JavaScript - Como declarar variáveis utilizando var, let e const.

Com o ECMAScript 2015, também conhecido por ES6, foi adicionado mais dois tipos de declarações de variáveis no JavaScript, sendo eles, o let e o const, fazendo assim com que o var não seja mais a única palavra chave para essa finalidade. Contudo, cada uma dessas palavras chaves, apesar de terem o mesmo objetivo, apresentam regras e comportamentos diferenciados entre elas. Abaixo, saberemos um pouco mais de cada uma e suas particularidades.

VAR

A declaração de variáveis através do var é a forma clássica do JavaScript, sendo ela a primeira a ser incorporada na linguagem.

var variavel = "Isso é uma variável!";

O var possui algumas características importantes. Ela não é limitada a um bloco, isso é, se ela for declarada ou utilizada antes de um bloco e seu valor sofrer alterações em blocos seguintes, as alterações do seu valor serão acatadas e mantidas. Exemplo:

var valor = "Esse é meu primeiro valor!";
console.log(valor);

function mudaValor() {
    valor = "Esse é meu novo valor!";
}

mudaValor();
console.log(valor);

A saída desse código no console será:

Esse é meu primeiro valor!
Esse é meu novo valor!

Outra característica é que todas as variáveis declaradas são carregadas antes da execução do código, como se elas tivessem sido declaradas no topo do código fonte. Essa característica é chamada de hoisting. Desta forma, a utilização da palavra chave var pode aparecer depois da efetiva utilização da variável.

Exemplo de código:

variavel = "Olá Mundo!";
console.log(variavel);

var variavel = "Novo valor!";
console.log(variavel);

Saída no console:

Olá Mundo!
Novo valor!

LET

A declaração utilizando a palavra chave let já é mais moderna e sua principal característica é que ela é limitada ao bloco atual do código, conforme pode ser visto abaixo:

let variavel = "Esse é meu valor!";
console.log(variavel);

function umaNovaFuncao() {
    let variavel = "Esse é meu valor dentro do bloco da função!";
    console.log(variavel);
}

umaNovaFuncao();
console.log(variavel);

Saída no console:

Esse é meu valor!
Esse é meu valor dentro do bloco da função!
Esse é meu valor!

Não é necessário realizar a inicialização da variável no momento em que ela é declarada, mas diferentemente que no var, a declaração é necessária antes da utilização efetiva da variável, caso ao contrário irá ocorrer um erro na execução do código fonte. Segue um exemplo de declaração sem inicialização:

let variavel;
console.log(variavel);

variavel = "Olá Mundo!";
console.log(variavel);

Saída no console:

undefined
Olá Mundo!

CONST

Por fim, a última maneira de declarar uma variável é através do const. As principais características dele é que se faz necessário ser iniciado no momento da sua declaração e que a referência nele atribuída não pode ser modificada, isso é, não é possível atribuir um novo valor para ele.

Exemplo de utilização do const:

const variavel = "Eu não vou mudar!";
console.log(variavel);

const objeto = {nome: "Fernando"};
console.log(objeto.nome);

objeto.nome = "Larissa";
console.log(objeto.nome); // Isso é permitido, pois a referência do objeto continua a mesma, somente o atributo que houve modificação.

objeto = {nome: "João"}; // ERRO! Não é permitido. Tentativa de modificar a referência.
console.log(objeto.nome);

Saída no console:

Eu não vou mudar!
Fernando
Larissa
[...]\variaveis-const.js:10
objeto = {nome: "João"}; // ERRO! Não é permitido. Tentativa de modificar a referência.
       ^

TypeError: Assignment to constant variable.
[...]

Termino aqui esse artigo que descreveu como utilizar a declaração de variáveis através do var, let e const e quais são as principais características de cada uma dessas palavras chave dentro do JavaScript. Atualmente, o var tende a não ser mais utilizado, sendo o let seu substituto imediato para armazenar valores que podem ser modificados e o const para o caso de valores que não podem ser modificados durante a execução do código.

Espero que essas informações tenham sido úteis e caso tenham sugestões de temas ou considerações sobre esse artigo, não deixe de enviá-las através do menu "Contato" do blog ou através do LinkedIn.

Grande abraço!!!

Esse site utiliza serviços de análise de visitação para medir o seu desempenho e engajamento. Você aceita que essas informações sejam coletadas?