Podemos criar uma função que recebe três parâmetros e os imprime na tela da seguinte forma:

Note que JavaScript não irá gerar erros se chamarmos essa função passando parâmetros a mais:

Entretanto, se passarmos parâmetros a menos, eles receberão o valor undefined:

Note que podemos atribuir um valor padrão, que será aplicado apenas se o valor não for atribuído na chamada da função.

Caso atribua um valor a aquela posição, o valor padrão será substituído.

Agora, observe o exemplo a seguir:

Esse código irá imprimir os valores de 1 a 6. Com base no que vimos acima, se eu adicionasse um sétimo número, ele não seria exibido pela função.
Podemos resolver esse problema usando o operador spread/rest antes do nome do array. O operador spread/rest é declarado com três pontos seguidos “…”:
Agora vamos reproduzi-lo usando o operador spread/rest

Veja um exemplo prático. O código a seguir, recebe uma lista de números e imprime o quadrado dele:

Execício
Construa uma função que reproduza os efeitos da função range(). Ela deve receber até 3 parâmetros: (1) valor de início; (2) valor final; e (3) passo.
Faça os seguintes testes e verifique se os resultados são idênticos aos apresentados a seguir:
- range(5) -> [1, 2, 3, 4, 5]
- range (6, 11) -> [6, 7, 8, 9, 10, 11]
- range(10, 19, 2) -> [10,12,14,16,18]
- range(6, 2) -> [6, 5, 4, 3, 2]
- range(8, -3, 4) -> [8, 4, 0]
Resposta:

Agora, vejamos os testes:

Quer aprender mais sobre Desenvolvimento Web?
Dá uma olhada nesses cursos disponíveis a partir de R$ 27,90 (e ainda dar uma moral para ajudar esse pobre professor a pagar seus boletos) 😉