Na aula anterior, aprendemos a usar parâmetros default para deixar nossas funções mais seguras, evitando problemas quando valores não são informados.
Agora vamos aprender a lidar com outra situação muito comum: quando não sabemos quantos valores uma função vai receber. Para isso, usamos os Rest Parameters.
🎯 Objetivo da aula
Ao final desta aula, você será capaz de:
- Entender o que são Rest Parameters
- Criar funções que recebem vários argumentos
- Usar o operador
...corretamente - Trabalhar com listas de valores de forma flexível
- Escrever funções mais genéricas e reutilizáveis
O problema: quantidade variável de argumentos
Imagine uma função que soma números. Às vezes você quer somar dois valores, às vezes três, quatro ou mais.
Antes dos Rest Parameters, isso exigia soluções mais complexas. Agora, o JavaScript oferece uma forma simples e elegante de resolver esse problema.
Conhecendo o Rest Parameter
O Rest Parameter usa o operador ... antes do nome do parâmetro. Ele reúne todos os valores extras passados para a função em um array.
function somar(...numeros) { console.log(numeros); }
somar(1, 2, 3, 4);
Nesse exemplo, todos os valores passados são agrupados no array numeros.
Usando Rest Parameters na prática
Agora vamos usar o Rest Parameter para somar qualquer quantidade de números:
function somar(...numeros) { let total = 0;
for (let numero of numeros) {
total += numero;
}
return total;
}
console.log(somar(2, 4));
console.log(somar(1, 2, 3, 4, 5));
O código acima resultará na seguinte saída:
Rest Parameters com Arrow Functions
Assim como outros recursos modernos do JavaScript, os Rest Parameters funcionam perfeitamente com Arrow Functions:
const somar = (...numeros) => { return numeros.reduce((total, n) => total + n, 0); };
console.log(somar(10, 20, 30));
Rest Parameter com outros parâmetros
O Rest Parameter pode ser combinado com parâmetros normais, desde que ele seja o último da lista:
function apresentar(nome, ...habilidades) { console.log(nome); console.log(habilidades); }
apresentar("Daniel", "JavaScript", "HTML", "CSS");
Resumo da aula para nunca mais esquecer
- Rest Parameters permitem receber vários argumentos em uma função
- Usam o operador
...antes do nome do parâmetro - Os valores são agrupados automaticamente em um array
- Funcionam com funções tradicionais e Arrow Functions
Na próxima aula, vamos aprender sobre Closures na prática e entender como funções podem “lembrar” do seu contexto.
HARDWARE
Entendendo o seu computador
O que há dentro do meu computador?
Existem alguns componentes fundamentais presentes dentro do seu computador e é muito importante que você conheça um pouco sobre eles, seja para argumentar com algum vendedor durante a compra de um novo PC ou para identificar alguma atitude desleal de algum técnico que esteja te passando um orçamento para reparo. Na seção Raio-X aqui do Contém Bits você pode conhecer e entender mais detalhadamente sobre cada componente, ou também pode clicar abaixo no componente que deseja, para conhecê-lo melhor.
Você Sabia?
Ultima Online
Criar um jogo é muito mais complexo do que parece. São milhares, às vezes, milhões de linhas de código. Isso não é exagero! Apenas o jogo Ultima Online possui 6.006.313 linhas de programação, totalizando 25.103.295 palavras
Tetris
O título Tetris detém o recorde de jogo mais adaptado de todos os tempos. No total foram mais de 60 plataformas diferentes que receberam alguma versão do quebra-cabeças criado por Alexey Pajitnov. Conheça mais sobre este incrível jogo clicando aqui.
Asteroids
O título Asteroids, do Atari, possui recorde de pontuação há 30 anos. Em 1982 um americano chamado Scott Safran atingiu a marca de 41.336.440. Atualmente ele faz parte de um minúsculo grupo de jogadores que conseguiram manter seus recordes por mais de 30 anos.
Civilization
A empresa Take-Two pagou à Infogrames mais de 22 milhões de dólares pelos direitos de Civilization, em novembro de 1994. Ainda sobre este título, Sid Meier, um dos seus fundadores, é o profissional da área dos games mais premiado em todo o mundo.
Senhas
Digitar senhas em computadores de uso coletivo é extremamente perigoso, pois além de softwares de monitoramento, existem dispositivos de hardware que podem capturar suas senhas. Evite ao máximo acessar sites de bancos a partir destes computadores. Veja mais aqui.










