1
resposta

[Dúvida] Definições sobre itens do JavaScript

Bom dia Alura. Após assistir os vídeos e ler alguns materiais sobre JavaScript, continuo com dúvidas sobre alguns conceitos como: variáveis, as declarações (var, let e const), o hoisting. Podem me ajudar?

1 resposta

Variáveis

Variáveis são espaços na memória para guardar dados. Em JavaScript, usamos var, let ou const para criar variáveis.

Declarações

let: Pode mudar o valor e é limitada ao escopo de bloco, ou seja, só existe dentro de {} onde foi declarada (como em if, for, funções, etc).

Observação: é a forma mais segura e recomendada para declarar variáveis que mudam de valor.

const: NÃO pode mudar o valor. Uma vez atribuído, o valor não pode ser alterado exceto no caso de objetos e arrays, onde o conteúdo pode ser alterado, mas não a referência (se não viu sobre isso ainda, verá no futuro), e também é limitada ao escopo de bloco.

Observação: use const sempre que a variável não precisar ser reatribuída. É uma boa prática para garantir segurança no código.

var: Pode mudar o valor e é limitada ao escopo de função, ou seja, só existe dentro da função onde foi declarada.

Observação: var é depreciaded porque pode causar comportamentos confusos, especialmente em blocos de código e laços. Em todo caso, não use-o

Hoisting

É o comportamento do JavaScript de "levantar" as declarações de variáveis e funções para o topo do código durante a execução.

  • Com var: a variável é içada com valor undefined.
console.log(a); // undefined
var a = 5;
  • Com let e const: a variável é içada, mas não pode ser usada antes da declaração. Isso gera erro.
console.log(b); // Erro!
let b = 10;

Não comprendo muito sobre Hoisting, mas esperado ter ajudado.