Resumo Explicativo: Princípios Básicos de JavaScript
1. Escopo e Hoisting
- Escopo determina onde a variável está disponível (global ou local).
- Hoisting significa que declarações com var são "movidas" para o topo do escopo antes da execução.
Ex: console.log(a); var a = 5; // undefined, não erro.
2. Diferença entre var, let e const
- var: escopo de função, sofre hoisting.
- let: escopo de bloco, não sofre hoisting visível.
- const: escopo de bloco e valor fixo (não pode reatribuir).
3. Funções Anônimas e Arrow Functions
- Função anônima: não tem nome.
let soma = function(a, b) { return a + b; };
- Arrow function: sintaxe mais curta.
let soma = (a, b) => a + b;
4. Callbacks
- Funções passadas como parâmetro para outras funções.
function saudacao(nome, callback) {
console.log("Olá, " + nome);
callback();
saudacao("Ana", () => console.log("Função concluída"));
5. Métodos de Array
- forEach(): executa para cada item.
- map(): transforma cada item e retorna novo array.
- filter(): filtra elementos que passam no teste.
- reduce(): reduz o array a um único valor.
Ex:
Resumo Explicativo: Princípios Básicos de JavaScript
let nums = [1, 2, 3];
let dobro = nums.map(n => n * 2); // [2, 4, 6]
6. Manipulação de Objetos
- Acessar: obj.chave ou obj["chave"]
- Adicionar: obj.novo = valor
- Remover: delete obj.chave
- Percorrer: for...in
for (let chave in obj) {
console.log(chave + ": " + obj[chave]);
7. Eventos no DOM
- Interações com a página (cliques, teclas, etc).
document.getElementById("btn").addEventListener("click", function() {
alert("Clicado!");
});
8. JSON (JavaScript Object Notation)
- Formato leve de troca de dados.
let json = '{"nome":"João", "idade":30}';
let obj = JSON.parse(json); // transforma em objeto
let string = JSON.stringify(obj); // transforma em string
9. setTimeout e setInterval
- Executar código com atraso ou repetição.
setTimeout(() => console.log("Esperou 2s"), 2000);
let id = setInterval(() => console.log("Repetindo"), 1000);
clearInterval(id); // para o intervalo
Resumo Explicativo: Princípios Básicos de JavaScript
10. Boas práticas iniciais
- Sempre use 'let' ou 'const'.
- Prefira arrow functions para funções simples.
- Separe responsabilidades: lógica, dados e exibição.
- Nomeie variáveis com clareza.
- Use comentários úteis e código limpo.