Capítulo 07: Funções e Arrow Functions 🪓❄️
Neste capítulo, vamos aprender a criar blocos de código reutilizáveis chamados Funções, com foco na sintaxe moderna de Arrow Functions, com o tema God of War!
📖 O que são Funções?
Funções são blocos de construção fundamentais em JavaScript. Elas permitem que você agrupe um conjunto de instruções para executar uma tarefa.
Arrow Functions
As Arrow Functions (() => {}) são uma forma mais curta e moderna de escrever funções em JavaScript, introduzidas no ES6.
📖 Exemplo Guiado: Ataque do Kratos
Vamos criar uma função tradicional e uma arrow function para calcular o dano de um ataque.
- Crie o arquivo
ataque_kratos.jsna pastasrc/:
// Função Tradicional
function calcularDanoTradicional(forca, bonus) {
return forca + bonus;
}
// Arrow Function (Forma moderna)
const calcularDanoArrow = (forca, bonus) => forca + bonus;
const forcaBase = 50;
const bonusFuria = 25;
console.log("Kratos atacou com as Laminas do Caos!");
console.log(`Dano (Tradicional): ${calcularDanoTradicional(forcaBase, bonusFuria)}`);
console.log(`Dano (Arrow): ${calcularDanoArrow(forcaBase, bonusFuria)}`);🕹️ Como Executar e Testar no VS Code
- Abra o terminal integrado.
- Execute:
node ataque_kratos.js
Resultado Esperado:
Kratos atacou com as Laminas do Caos!
Dano (Tradicional): 75
Dano (Arrow): 75📊 Ilustração Visual: Fluxo da Função
Veja como o controle do programa passa para a função e retorna:
graph TD A[Fluxo Principal] -->|1. Chama função| B["Função: calcularDano"] B -->|2. Executa a soma| B B -->|3. Retorna o resultado| A
🛠️ Prática Obrigatória 1: Barra de Vida
Crie uma Arrow Function chamada exibirVida que receba um número de vida e exiba uma barra visual (ex: se a vida for 80, exibe Vida: [||||||||] 80%). Use um laço dentro da função ou o método .repeat() de strings!
🔑 Gabarito de Código
Prática 1: barra_vida.js
const exibirVida = (vida) => {
const barras = "|".repeat(vida / 10);
console.log(`Vida: [${barras}] ${vida}%`);
};
const vidaKratos = 80;
exibirVida(vidaKratos);📤 Instruções de Entrega (GitHub Desktop + Microsoft Teams)
(Siga o padrão estabelecido no Guia)