JavaScriptFunçõesintermediario

Rest parameters

Em JavaScript, muitas funções precisam lidar com um número variável de argumentos — como Math.max ou funções de logging. O rest parameter permite capturar esses argumentos como um array, tornando o código mais limpo e flexível. Dominar esse padrão é essencial para escrever funções que se adaptam a diferentes usos, sem precisar definir parâmetros fixos.

O PROBLEMA

Crie somarTudo(...numeros) que aceita qualquer quantidade de números e retorna a soma.

EXEMPLO

somarTudo(1,2,3) → 6
somarTudo(10,20,30,40) → 100

SOBRE O CONCEITO

O rest parameter, escrito como ...nome, coleta todos os argumentos excedentes em um array real. Diferente do objeto arguments (que é array-like e não possui métodos de array como reduce), o rest é um array de verdade. Um erro comum é confundir rest com spread: rest coleta, spread espalha. Outro erro é usar arguments em vez de rest, perdendo acesso direto a métodos como reduce. No exercício, somarTudo(...numeros) usa rest para agrupar todos os números em um array e depois soma com reduce.

RESOLUÇÃO

Mais exercícios de Funções

JSF019 · IntermediárioComposição de funçõesJSF020 · IntermediárioIIFEJSF022 · AvançadoGenerator functionJSF023 · AvançadoFunção pura vs impura
Ver todos os exercícios de JavaScript