Olá.
Fiquei com a mesma dúvida de uma aluna, que criou um tópico no fórum, porém não foi respondida.
Nesta aula, por volta dos 9 minutos, é utilizado o código abaixo:
Admin.prototype = Object.create(User.prototype);
No entanto, não entendi a necessidade do Object.create()
neste caso. Rodei o código sem ele e, aparentemente, a saída foi a mesma.
Por favor, saberiam dizer por que (ou se) é necessário o uso do Object.create()
neste caso?
Segue o código completo para referência:
function User(nome, email) {
this.nome = nome;
this.email = email;
this.exibirInfos = function() {
return `Nome: ${this.nome}; e-mail: ${this.email}`;
}
}
function Admin(role) {
User.call(this, 'Matheus', 'meu@email.br');
this.role = role || 'estudante';
}
// o resultado é o mesmo adicionando ou não a próxima linha
// Admin.prototype = Object.create(User.prototype);
const newUser = new Admin('coordenador');
console.log(newUser);
Obrigado.