Aqui diz "usamos o objeto User como protótipo", mas "User" é a função construtora e não objeto, né? Está incorreto isso?
Aqui diz "usamos o objeto User como protótipo", mas "User" é a função construtora e não objeto, né? Está incorreto isso?
Oi, dev! Tudo bem?
No trecho, a expressão "usamos o objeto User como protótipo" pode realmente causar confusão, mas na verdade, User é uma função construtora, e o que está sendo usado como protótipo é o objeto User.prototype.
Quando você define uma função construtora, o JavaScript cria um objeto prototype associado a essa função e é esse objeto prototype que é utilizado como protótipo para outros objetos, permitindo que eles herdem métodos e propriedades.
No código que você está analisando, o Object.create(User.prototype) é usado para criar um novo objeto que herda de User.prototype, e não da função User em si.
Espero ter ajudado!
Um forte abraço e bons estudos!