Neste artigo você vai aprender a criar uma função em JavaScript que aceita argumentos ilimitados, ou seja, número infinito de parâmetros
Conteúdo também disponível em vídeo:
Fala programador(a), beleza? Bora aprender a criar uma função que aceita um número infinito de parâmetros com JavaScript!
É bem simples criar este recurso em JS, pois toda função possui um objeto chamado arguments
Neste objeto temos acesso a todos os argumentos enviados para uma função
E o JavaScript não gera um erro caso nós passarmos argumentos demais em uma invocação de função
Então podemos fazer loop nos resultados de arguments e utilizar todos os parâmetros
Veja um exemplo prático:
function somaInfinita() { console.log(arguments); // objeto com todos os argumentos var args = [].slice.call(arguments, 0); // transformando objeto em array var soma = 0; // loop nos argumentos, lógica da função for (var i = 0; i < args.length; i++) { soma += args[i]; } return soma; } console.log(somaInfinita(2, 4)); // 6 console.log(somaInfinita(5, 6, 7, 9)); // 27 console.log(somaInfinita(10, 20, 30, 40, 50, 55, 60, 70)); // 335
Aqui neste exemplo criamos uma função de soma infinita, ou seja, soma todos os itens enviados como forma de parâmetros
Temos primeiramente a desconstrução do objeto de arguments, que contém os números da nossa função, mas no seu caso pode conter o tipo de dado que for necessário
Depois com o array, criamos um loop e realizamos a soma, e por fim o retorno da função
Mas a ideia central é que: podemos receber qualquer número de argumentos que essa função vai processar a sua lógica e entregar um resultado
Conclusão
Neste artigo vimos como criar uma função em JavaScript que aceita argumentos ilimitados
Ou seja, independente do número de argumentos passados na sua invocação, esta função irá funcionar e retornar algum valor
O principal recurso é o objeto arguments, que existe em todas as funções e contém o valor de todos os argumentos passados
Confira também nosso catálogo de cursos gratuitos, com aulas semanais no YouTube