Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Polimorfismo: Overloading

Olá, tudo bem?

No curso foi demonstrado o polimorfismo por overriding, foram criados dois métodos com a mesma assinatura mas em classes diferentes. Mas em outras linguagens existe o polimorfismo por overloading, onde os métodos tem os mesmos nomes mas com parâmetros diferentes. Tentei implementar isso no JS (uma função sem parâmetro e outra com parâmetro) mas não funcionou, o node sempre "chama" a com parâmetro. No JS não existe overloading?

2 respostas
solução!

Olá, Fabio,

Ao contrário de outras linguagens, o JavaScript por padrão realmente não permite function overloading. Existem algumas formas de se contornar isso caso você realmente precise implementar essa funcionalidade; a maior parte destes workarounds (nossa boa e velha gambiarra) envolve verificar internamente os argumentos recebidos pela função e implementar comportamentos diferentes para cada caso. Mesmo assim, não serão duas funções diferentes, ainda será uma mesma função.

Espero ter ajudado!

Bons estudos ;)

Oi Juliana, perfeito, excelente explicação!

Muito obrigado e parabéns pela didática! ;)