Neste artigo você vai aprender a criar uma função em JavaScript que aceita argumentos ilimitados, ou seja, número infinito de parâmetros

Função em JavaScript que aceita argumentos ilimitados capa

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

Subscribe
Notify of
guest

0 Comentários
Inline Feedbacks
View all comments