Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

tipe da instancia

Boa noite

Bom eu dei um

console.log(typeof Cliente)

e a saida foi uma "function"

e depois dei

console.log(typeof andre)

e a saida foi um "object"

Não consegui entender o porque, os dois não deveriam ser do mesmo tipo?

1 resposta
solução!

Boa tarde Renan, tudo certo?

Você trouxe uma ótima dúvida que evidencia como essa linguagem de programação foi mudando conforme o tempo e deixando alguns comportamentos que podem ser considerados inesperados.

A chamada typeof andre retornar object faz sentido, pois andre é um objeto instanciado da classe Cliente. Ou seja, andre representa um cliente, e a classe Cliente representa quais são os atributos e comportamentos que um cliente tem.

Mas então porque typeof Cliente não nos retorna Class ou algo parecido? É aí que entra uma questão mais histórica: as classes só foram introduzidas no ECMAScript 2015, ou seja, a palavra reservada typeof precede a existência das classes. Eu confirmei na documentação do MDN e não existe um retorno específico para as classes, elas aparentemente entram na categoria function.

Mas existe uma outra instrução que pode nos ajudar a lidar com classes e protótipos que é a instanceof, que eu recomendo conferir depois de terminar os cursos de JavaScript para back end .

Espero ter ajudado e bons estudos!

Caso este post tenha resolvido sua dúvida, por favor, marque o tópico como solucionado ✓.Bons Estudos!