Conhecendo variáveis e constantes no JavaScript \| TreinaWeb               Promoção no ar   Matricule-se agora e garanta **54% de desconto**  

  Termina em   Tempo restante da oferta: 02 Horas 

 08 Min 

 11 Seg 

   Tempo restante da oferta: 02 08 11 

  [Assinar →](https://www.treinaweb.com.br/checkout/pagamento/plano/anual?cupom=TW-SCLIENTE26) 

   [                ](https://www.treinaweb.com.br)  Explorar  

 [ Quanto custa? ](#assinatura) [ FAQ ](https://www.treinaweb.com.br#faq) [Matricule-se](#assinatura) [ Entrar ](https://www.treinaweb.com.br/login) 

     [ Início ](https://www.treinaweb.com.br) [ Artigos ](https://www.treinaweb.com.br/blog) Conhecendo variáveis e constantes no JavaScript  [ Desenvolvimento Front-end ](https://www.treinaweb.com.br/blog/categoria/desenvolvimento-front-end) [ Javascript ](https://www.treinaweb.com.br/blog/categoria/javascript) 

# Conhecendo variáveis e constantes no JavaScript

 Neste artigo vamos aprender a declarar e a utilizar constantes e variáveis no JavaScript, entendendo quando definir var, let e const.

 [ Wesley Gado ](https://www.treinaweb.com.br/blog/autor/wesley-gado) 6 anos atrás

  ![](https://dkrn4sk0rn31v.cloudfront.net/uploads/2021/02/CONHECENDO-VÁRIAVEIS-CONSTANTES-JAVASCRIPT.png)  

## Características de tipagem do JavaScript

Primeiramente, devemos citar que a linguagem JavaScript é de tipagem dinâmica, ou seja, não é necessário declarar tipo a uma variável, podendo ser modificada posteriormente.

A própria linguagem de programação, neste caso, tem a habilidade de escolher o tipo de dado de acordo com o valor atribuído a variável.

Em nosso artigo “[Quais as diferenças entre tipagens: estática ou dinâmica e forte ou fraca](https://www.treinaweb.com.br/blog/quais-as-diferencas-entre-tipagens-estatica-ou-dinamica-e-forte-ou-fraca/ "Quais as diferenças entre tipagens: estática ou dinâmica e forte ou fraca")”, explicamos quais os conceitos por tipagem estática e dinâmica e também sobre tipagem fraca e forte. É importante a leitura para você entender como o JavaScript lida com os tipos, principalmente se você está acostumado a programar em uma linguagem com tipagem estática e forte.

[  ![JavaScript - Fundamentos](https://d2knvm16wkt3ia.cloudfront.net/assets/svg-icon/javascript.svg)   Curso JavaScript - Fundamentos Conhecer o curso ](https://www.treinaweb.com.br/curso/javascript-fundamentos)

## Tipos de dados do JavaScript

Ao programar em JavaScrpit nós precisamos saber quais os tipos de dados que a linguagem trabalha, os principais tipos de dados primitivos são:

- **Boolean** - possuem apenas dois valores: verdadeiro ou falso;
- **Undefined** - indica que não foi definido um valor;
- **Null** - indica que um valor é nulo;
- **Number** - armazena valores numéricos;
- **String** - armazena textos;
- **Symbol** - armazena símbolos;

Além dos tipos de dados primitivos, nós também temos o tipo **object**, que possibilita trabalharmos com objetos utilizando JavaScript.

 [ ![](https://dkrn4sk0rn31v.cloudfront.net/uploads/2023/10/E-BOOK-GRATUITO-COMECANDO-JS.png) ](https://www.treinaweb.com.br/ebook/guia-javascript)

## Regras de nomeação de variáveis no JavaScript

Uma das peculiaridades da linguagem JavaScript é que podemos declarar variáveis de duas formas, utilizando **var**, comum em outras linguagens, ou utilizando **let**.

Vale ressaltar que por se tratar de uma linguagem de tipagem dinâmica, ao declarar uma variável não é necessário informar o tipo da variável, por exemplo:

```javascript
var idade = 15;
var nome = 'Marina';
let endereco = 'Av. Central 1';

```

Ao atribuir o valor 15 para a variável idade, a linguagem já reconhece como uma variável do tipo **Number**. O mesmo ocorre para a variável nome, ao atribuirmos o valor ‘Marina’ a linguagem reconhece como uma variável do tipo **String**.

Outras regras devem ser seguidas, como:

- Não declarar variável com palavras reservadas, como let, var, while, for, etc.
- Deve conter somente letras, números e underscore.
- Pode iniciar com uma letra, underscore (\_) ou cifrão ($).

## Declarando variáveis com var e let no JavaScript

No JavaScript nós temos que nos atentar quando vamos declarar variáveis usando var ou let, pois cada uma possuí diferenças que são importantes.

Antes de tudo precisamos explicar que o JavaScript trabalha com escopos, onde cada bloco (funções, condicionais e estruturas de repetição, por exemplo) é um escopo fechado.

Ao utilizarmos **var**, ele trabalha de forma independente para cada escopo de função, por exemplo:

```javascript
var nomeCarro = 'onix';

function carro() {
   var nomeCarro = 'fiesta';
   console.log(nomeCarro);
}

console.log(nomeCarro);

```

Analisando o código acima percebemos que ao executar a função `carro()`, iremos obter como resposta a String `fiesta`. Se executarmos `console.log(nomeCarro)`, vamos obter o nome `onix`, pois a variável carro só mudou de nome dentro do escopo da função `carro()`.

![Usando ‘Var’ no JavaScript](https://dkrn4sk0rn31v.cloudfront.net/uploads/2021/01/var-javascript.png)

Porém se trabalharmos com um **IF** por exemplo, a situação muda:

```javascript
var nomeCarro = 'onix';
var i = 0;

if(i === 0){
	var nomeCarro = 'fiesta';
	console.log(nomeCarro);
}

console.log(nomeCarro);

```

Neste caso utilizando **var** sem o efeito de escopo. Portanto, ao executar `console.log(nomeCarro)` fora do **if** teremos como retorno a **String `fiesta`** e não `onix` conforme declarado anteriormente.

![Usando ‘var’ no JavaScript](https://dkrn4sk0rn31v.cloudfront.net/uploads/2021/02/var2-javascript.png)

[  ![React Native - Fundamentos](https://d2knvm16wkt3ia.cloudfront.net/assets/svg-icon/react-native.svg)   Curso React Native - Fundamentos Conhecer o curso ](https://www.treinaweb.com.br/curso/react-native-fundamentos)

Ou seja, uma variável sendo declarada como **var** só tem efeito de escopo em função.

Agora se substituirmos o código acima declarando as variáveis como **let**:

```javascript
let nomeCarro = 'onix';
var i = 0;

if (i === 0){
	let nomeCarro = 'fiesta';
	console.log(nomeCarro);
}

console.log(nomeCarro);

```

No caso declaramos a variável `nomeCarro` dentro do **if** com o valor `fiesta` , mas ao executarmos `console.log(nomeCarro)` fora do **if** será exibido a string `onix`.

Desta forma respeitando o escopo do bloco.

*Obs: Vale lembrar que **let** tem o mesmo comportamento de escopo que **var** se tratando do escopo de funções.*

![Usando ‘let’ no JavaScript](https://dkrn4sk0rn31v.cloudfront.net/uploads/2021/02/let-javascript.png)

## Declarando constantes

Assim como em outras linguagens, podemos declarar **constantes** que possuem valores **fixos**. Também vale ressaltar que as constantes tem o mesmo comportamento que variáveis definidas como **let em relação ao escopo de bloco,** como vimos no exemplo acima\*\*.\*\*

Na prática podemos utilizar uma constante para atribuir o valor de PI, por exemplo:

```javascript
const PI = 3.14;

```

*Obs: Por convenção usamos letras maiúsculas separadas por underscore ao declarar uma **constante**.*

Ao tentar alterar o valor da **constante**, vamos obter o seguinte erro:

![Usando Constantes no JavaScript](https://dkrn4sk0rn31v.cloudfront.net/uploads/2021/02/constantes-javascript.png)

## Conclusão

Neste artigo falamos sobre as características do JavaScript, sendo uma linguagem de tipagem dinâmica. Também aprendemos sobre escopo e, principalmente, sobre a declaração e uso de variáveis e constantes usando as palavras-chave: var, let e const. Aconselho também a leitura de nosso artigo “[Como executar o seu primeiro código JavaScript](https://www.treinaweb.com.br/blog/como-executar-seu-primeiro-codigo-javascript/ "Como executar o seu primeiro código JavaScript")” para iniciar os seus estudos.

[  ![Desenvolvedor JavaScript](https://d2knvm16wkt3ia.cloudfront.net/assets/svg-icon/javascript.svg)   Formação Desenvolvedor JavaScript Conhecer a formação ](https://www.treinaweb.com.br/formacao/desenvolvedor-javascript)

Por fim, caso queira aprender mais sobre [JavaScript](https://www.treinaweb.com.br/blog/o-que-e-e-como-comecar-com-javascript) saiba que aqui na [TreinaWeb](https://treinaweb.com.br/) temos o curso [JavaScript - Fundamentos](https://www.treinaweb.com.br/curso/javascript-fundamentos) que possui **07h13 de vídeos** e um total de **93 exercícios**. Conheça também nossos outros cursos de [JavaScript](https://www.treinaweb.com.br/cursos?q=javascript).

Veja quais são os tópicos abordados durante o curso de JavaScript - Fundamentos:

- Como os computadores funcionam;
- O primeiro código no navegador e no Node.js;
- Declaração de variáveis e operadores;
- Tomadas de decisão e laços de repetição;
- Trabalhando com Numbers, Strings, Arrays, Objects e Functions;
- Vários exercícios;
- Vários desafios de programação direto no navegador;
- Projeto prático para fixar o que foi aprendido.

- [ #JavaScript ](https://www.treinaweb.com.br/blog/tag/javascript)
- [ #Desenvolvimento ](https://www.treinaweb.com.br/blog/tag/desenvolvimento)
- [ #Front-end ](https://www.treinaweb.com.br/blog/tag/front-end)

Autor

 ![Wesley Gado](//secure.gravatar.com/avatar/1b770ca482a7232b1885881430a592bb?d=mm)

## Wesley Gado

 Formado em Análise e Desenvolvimento de Sistemas pelo Instituto Federal de São Paulo, atuou em projetos como desenvolvedor Front-End. Nas horas vagas grava Podcast e arrisca uns três acordes no violão. 

 [Todos os artigos](https://www.treinaweb.com.br/blog/autor/wesley-gado)  

## Continue estudando

 Transforme leitura em prática com os cursos e formações da TreinaWeb.

 [Ver cursos](https://www.treinaweb.com.br/cursos)   

  Continue lendo

## Artigos relacionados

- ![](https://dkrn4sk0rn31v.cloudfront.net/uploads/2021/03/como-instalar-o-dart-e-executar-seu-primeiro-exemplo-400x280.png)  [ Dart ](https://www.treinaweb.com.br/blog/categoria/dart) 

     6 anos atrás

    ##  [ Conhecendo variáveis e constantes no Dart ](https://www.treinaweb.com.br/blog/conhecendo-variaveis-e-constantes-no-dart) 

     Neste artigo conheceremos as variáveis e constantes no Dart.

     Ler artigo
- ![](https://dkrn4sk0rn31v.cloudfront.net/uploads/2021/05/GUIA-LINGUAGEM-JAVASCRIPT-400x280.png)  [ Desenvolvimento Front-end ](https://www.treinaweb.com.br/blog/categoria/desenvolvimento-front-end) 

     6 anos atrás

    ##  [ Guia da Linguagem JavaScript ](https://www.treinaweb.com.br/blog/guia-da-linguagem-javascript) 

     Neste Guia da Linguagem Javascript vamos abordar aspectos fundamentais, como: tipos de dados, variáveis, objetos, arrays e muito mais.

     Ler artigo
- ![](https://dkrn4sk0rn31v.cloudfront.net/uploads/2021/03/ARRAYS-OBJETOS-JAVASCRIPT-400x280.png)  [ Desenvolvimento Front-end ](https://www.treinaweb.com.br/blog/categoria/desenvolvimento-front-end) 

     6 anos atrás

    ##  [ Trabalhando com arrays e objetos no JavaScript ](https://www.treinaweb.com.br/blog/trabalhando-com-arrays-e-objetos-no-javascript) 

     Confira neste artigo como trabalhar com Arrays e Objetos no JavaScript. Vamos aprender a declarar e manipular Arrays e Objetos com exemplos.

     Ler artigo
- ![](https://dkrn4sk0rn31v.cloudfront.net/uploads/2022/11/ARTIGO-DART-400x280.jpg)  [ Dart ](https://www.treinaweb.com.br/blog/categoria/dart) 

     4 anos atrás

    ##  [ Guia da linguagem dart ](https://www.treinaweb.com.br/blog/guia-da-linguagem-dart) 

     Nesse guia da linguagem Dart você aprenderá o necessário para criar os seus primeiros softwares com a linguagem de programação Dart.

     Ler artigo
- ![](https://dkrn4sk0rn31v.cloudfront.net/uploads/2021/03/guia-da-linguagem-python-400x280.png)  [ Python ](https://www.treinaweb.com.br/blog/categoria/python) 

     6 anos atrás

    ##  [ Guia da linguagem Python ](https://www.treinaweb.com.br/blog/guia-da-linguagem-python) 

     Entenda os principais conceitos para iniciar seus estudos neste guia da linguagem Python.

     Ler artigo
- ![](https://dkrn4sk0rn31v.cloudfront.net/uploads/2021/06/NODE-SQUELIZE-MYSQL-400x280.png)  [ Javascript ](https://www.treinaweb.com.br/blog/categoria/javascript) 

     5 anos atrás

    ##  [ Usando Sequelize ORM com Node e Express ](https://www.treinaweb.com.br/blog/usando-sequelize-orm-com-node-e-express) 

     Vamos aprender a configurar uma aplicação com banco de dados MySQL usando Sequelize ORM com Node.js e Express.

     Ler artigo
- ![](https://dkrn4sk0rn31v.cloudfront.net/uploads/2021/08/EJS-400x280.png)  [ Node ](https://www.treinaweb.com.br/blog/categoria/node-js) 

     5 anos atrás

    ##  [ Utilizando template engine EJS com Node.js ](https://www.treinaweb.com.br/blog/utilizando-template-engine-ejs-com-node-js) 

     Neste artigo vamos aprender a utilizar a Template Engine EJS com Node.js e também alguns recursos interessantes desta ferramenta.

     Ler artigo
- ![](https://dkrn4sk0rn31v.cloudfront.net/uploads/2019/06/27155937/js-symbol-400x280.png)  [ Javascript ](https://www.treinaweb.com.br/blog/categoria/javascript) 

     8 anos atrás

    ##  [ JavaScript: você sabe o que são e por que usar Symbols? ](https://www.treinaweb.com.br/blog/javascript-voce-sabe-o-que-sao-e-por-que-usar-symbols) 

     Descubra a utilidade dos Symbols no JavaScript, novo tipo primitivo introduzido no ES2015.

     Ler artigo
- ![](https://dkrn4sk0rn31v.cloudfront.net/uploads/2021/04/DOM-JAVASCRIPT-400x280.png)  [ Desenvolvimento Front-end ](https://www.treinaweb.com.br/blog/categoria/desenvolvimento-front-end) 

     6 anos atrás

    ##  [ Trabalhando com JavaScript no navegador ](https://www.treinaweb.com.br/blog/trabalhando-com-javascript-no-navegador) 

     Ao utilizar JavaScript para desenvolvimento web, é necessário entender o funcionamento do DOM (Document Object Model). O DOM é o que permite o acesso aos elementos HTML/XML para manipulá-los de forma que seja interessante para os nossos objetivos como desenvolvedor.

     Ler artigo
- ![](https://dkrn4sk0rn31v.cloudfront.net/uploads/2022/10/o-que-e-e-como-comecar-com-golang-400x280.jpg)  [ Desenvolvimento Back-end ](https://www.treinaweb.com.br/blog/categoria/desenvolvimento-back-end) 

     4 anos atrás

    ##  [ Conhecendo variáveis e constantes na Golang ](https://www.treinaweb.com.br/blog/conhecendo-variaveis-e-constantes-na-golang) 

     Conheça neste artigo os tipos de dados presentes e a sintaxe para que possamos declarar variáveis e constantes na Golang.

     Ler artigo
- ![](https://dkrn4sk0rn31v.cloudfront.net/uploads/2022/05/como-instalar-o-csharp-e-nosso-primeiro-exemplo-400x280.png)  [ C# ](https://www.treinaweb.com.br/blog/categoria/csharp) 

     4 anos atrás

    ##  [ Conhecendo variáveis e constantes no C# ](https://www.treinaweb.com.br/blog/conhecendo-variaveis-e-constantes-no-csharp) 

     Conheça neste artigo os tipos de dados presentes no C# e a sintaxe para que possamos declarar variáveis e constantes.

     Ler artigo
- ![](https://dkrn4sk0rn31v.cloudfront.net/uploads/2021/01/VARIÁVEIS-JAVA-400x280.png)  [ Java ](https://www.treinaweb.com.br/blog/categoria/java) 

     6 anos atrás

    ##  [ Conhecendo variáveis e constantes no Java ](https://www.treinaweb.com.br/blog/conhecendo-variaveis-e-constantes-no-java) 

     Conheça neste artigo as variáveis, tipos de dados e constantes da linguagem Java.

     Ler artigo

## Um ano de acesso total para você viver de programação.

 Todos os cursos e formações da TreinaWeb numa única assinatura, com professores que atuam no mercado, suporte direto e certificados. Do primeiro `console.log` ao mercado de trabalho.

- **1 ano** de acesso a **todos os cursos**
- Cursos novos **toda semana**
- Suporte **direto com professores**
- Plano de carreira **personalizado**
- **Certificados digitais** inclusos
- **Aplicativos** para Android e iOS, com **acesso offline**

    **Garantia incondicional de satisfação** 

 Teste por 7 dias e, se não fizer sentido para você, devolvemos seu dinheiro.

### Acesso completo a todos os cursos e dezenas de Formações.

 12 meses 

  Economize R$ 840,00  54% OFF 

 de 12x R$ 129,00 por apenas

 12x  R$ 59,00

 sem juros no cartão de crédito ou R$ 599,00 à vista

  Oferta termina em  **02h 08min 11s**

- Acesso imediato e ilimitado durante 1 ano.
- Plano de carreira personalizado.
- Suporte direto com professores.
- E muito mais!

 [Matricule-se agora](https://www.treinaweb.com.br/checkout/pagamento/plano/anual?cupom=TW-SCLIENTE26)

     [                ](https://www.treinaweb.com.br)

 Escola online de programação, tecnologia e IA.

- [  ](https://www.facebook.com/TreinaWeb/)
- [  ](https://www.instagram.com/treinaweb/)
- [  ](https://www.youtube.com/user/TreinaWeb)
- [  ](https://twitter.com/treinaweb)
- [  ](https://www.linkedin.com/company/treinaweb)
- [  ](https://github.com/treinaweb)

## Inscreva-se em nossa newsletter

Receba lançamentos, promoções e novidades.

   Seu nome     Seu WhatsApp     Seu melhor e-mail   Inscrever-se 

## Cursos

- [ Base para Devs ](https://www.treinaweb.com.br/categoria/base-para-devs)
- [ Front-end ](https://www.treinaweb.com.br/categoria/desenvolvimento-front-end)
- [ Back-end ](https://www.treinaweb.com.br/categoria/desenvolvimento-back-end)
- [ Mobile ](https://www.treinaweb.com.br/categoria/desenvolvimento-mobile)
- [ Bancos de Dados ](https://www.treinaweb.com.br/categoria/bancos-de-dados)
- [ Cloud ](https://www.treinaweb.com.br/categoria/cloud-computing)
- [ IA ](https://www.treinaweb.com.br/categoria/ia)
- [ E mais ](https://www.treinaweb.com.br/categoria/e-mais)
- [ Ver todos os cursos ](https://www.treinaweb.com.br/cursos)

## Conteúdo

- [ Formações ](https://www.treinaweb.com.br/formacoes)
- [ Projetos práticos ](https://www.treinaweb.com.br/projetos-praticos)
- [ Direto ao ponto ](https://www.treinaweb.com.br/direto-ao-ponto)
- [ Planos ](https://www.treinaweb.com.br#assinatura)
- [ Depoimentos ](https://www.treinaweb.com.br#depoimentos)
- [ Comunidade ](https://www.treinaweb.com.br#comunidade)
- [ Corpo docente ](https://www.treinaweb.com.br#docente)

## A empresa

- [ Sobre a TreinaWeb ](https://www.treinaweb.com.br#sobre)
- [ Perguntas frequentes ](https://www.treinaweb.com.br#faq)
- [ Vantagens de estudar na TreinaWeb ](https://www.treinaweb.com.br/vantagens-de-estudar-na-treinaweb)
- [ Cursos para empresas ](https://www.treinaweb.com.br/empresas)
- [ Sugira um novo curso ](https://www.treinaweb.com.br/sugerir-curso)
- [ Trabalhe conosco ](https://www.treinaweb.com.br/trabalhe-conosco)
- [ Artigos ](https://www.treinaweb.com.br/blog)
- [ Desenvolvedores e agentes ](https://www.treinaweb.com.br/developers)
- [ Contato ](https://www.treinaweb.com.br/contato)
- [ Política de privacidade ](https://www.treinaweb.com.br/politica-de-privacidade)
- [ Termos de uso ](https://www.treinaweb.com.br/termos-de-uso)

## Baixe nosso aplicativo

 [   Disponível na **App Store**  ](https://apps.apple.com/us/app/treinaweb/id1322729447) [   Disponível no **Google Play**  ](https://play.google.com/store/apps/details?id=br.com.treinaweb.mobile) 

  Av. Paulista, 1765, Conj 71 e 72 · Bela Vista · São Paulo · SP · 01311-200   © 2004 – 2026 TreinaWeb Tecnologia LTDA · CNPJ 06.156.637/0001-58
