DEV Community

Cover image for JavaScript Fundamentos - Variáveis e Tipos de Dados
Jorge Nascimento
Jorge Nascimento

Posted on

JavaScript Fundamentos - Variáveis e Tipos de Dados

JavaScript é uma das linguagens de programação mais popular do mundo, é utilizada tanto para desenvolvimento no front end, back end, mobile entre outras finalidades. É uma linguagem interpretada, multi paradigmas e com tipagem dinâmica.

É fundamental conhecer bem a base da linguagem antes de se aventurar a aprender uma lib/framework como react, vue e angular.

Nesse post inicial vamos falar sobre os tipos de variáveis e suas características no Javascript.

Variáveis

Utilizamos as palavras reservadas Var, Let e Const para criação de variáveis em JavaScript.

As regras de criação de variáveis seguem o padrão [a-zA-Z0-9_$]

  • As variáveis possuem os seguintes ciclo de vida:

    • Declaração: Quando o nome é registrado no contexto de execução (Escopo).
    • Inicialização: A variável é inicializada com valor undefined.
    • Atribuição: Um valor é atribuído para a variável.

Características

Var - Na declaração com VAR quando o escopo é interpretado a variável é inicializada como undefined caso tente exibi la antes da mesma ser declarada, não respeitando o bloco e permitindo a redeclaração e reatribuição.

// pi inicializada com undefined
console.log(pi);

var pi = 3.141592;

// permite a redeclaração da variável
var pi = 3;

console.log(pi); // => 3

// Mesmo sendo declarada dentro de um escopo a variáveis é acessada fora (içamento)
if (true) {
  var pi = 2;
}

console.log(pi); // => 2
Enter fullscreen mode Exit fullscreen mode

Let - Na declaração com LET o escopo é respeitado, pode ser reatribuida mas não redeclarada.

console.log(pi); // => ReferenceError: Cannot access 'pi' before initialization

let pi = 3.141592;

let pi = 3; // => SyntaxError: Identifier 'pi' has already been declared

pi = 3; // permite reatribuição

// Declarado dentro do escopo não pode acessada fora.
if (true) {
  let pi = 2;
}

console.log(pi); // => 3
Enter fullscreen mode Exit fullscreen mode

Const - Na declaração com CONST o escopo é respeitado, não pode ser reatribuido nem redeclarado.

console.log(pi); // => ReferenceError: Cannot access 'pi' before initialization

const pi = 3.141592;

const pi = 3; // => SyntaxError: Identifier 'pi' has already been declared

pi = 3; // TypeError: Assignment to constant variable.

// Declarado dentro do escopo não pode acessada fora.
if (true) {
  const pi = 2;
}

console.log(pi); // => 3
Enter fullscreen mode Exit fullscreen mode

Tipos de dados

Vamos entender os tipos de dados fornecidos pela JS.

Os tipo de dados se dividem em Primitivos e Objetos.

Os Tipos primitivos são: Number | Boolean | String | Null | Undefined e Symbol.

// O operador typeof retorna uma string indicando o tipo de um operando.

typeof 10; // => 'number'
typeof "JavaScript"; // => 'string'
typeof true; // => 'boolean'
typeof Symbol(); // => 'symbol'
typeof null; // => 'object'
typeof underfined; // => 'underfined'
Enter fullscreen mode Exit fullscreen mode

Os Tipos Objetos são valores que representam uma referência em memória que pode ser alterada, exemplo: Function | Object | Arrays | Regex | Date...

typeof function sum(a, b) {
  return a + b;
}; // => 'function'
typeof { name: "Linus Torvald" }; // => 'object'
typeof [1, 2, 3, 4, 5]; // => 'object'
typeof /[a-zA-Z_$]/; // => 'object'
typeof new Date(); // => 'object'
Enter fullscreen mode Exit fullscreen mode

Por hoje é isso pessoal, nos próximos postes iremos entrar de forma mais detalhadas nos tipos de dados e as API's fornecidas para sua manipulação.

Obrigado Por ler.

** Exemplos são baseado no curso JavaScript - MasterClass do Rodrigo Branas.



Este post tem como objetivo ajudar quem esta começando no aprendizado das tecnologias web, além de servir como incentivo no meus estudos e a criar outros posts pra fixação do aprendizado.


Me paga um ☕ ? | pix: nascimento.dev.io@gmail.com


Me Sigam :)

Linkedin |
Github

Top comments (0)