Aqui diz que "User" é um objeto, mas "User" não é uma função construtora? O "new" cria instâncias de qual objeto?
Aqui diz que "User" é um objeto, mas "User" não é uma função construtora? O "new" cria instâncias de qual objeto?
Oi Luidi,
Entendo sua dúvida sobre a diferença entre objetos e funções construtoras em JavaScript. 🤔
Em JavaScript, uma função construtora é usada para criar objetos.
Quando você usa o operador new
com uma função, você está criando uma nova instância de um objeto.
No exemplo que você mencionou, User
é uma função construtora.
O operador new
cria uma nova instância do objeto que a função User
define.
Para esclarecer, veja um exemplo prático:
function User(nome, email) {
this.nome = nome;
this.email = email;
this.exibeInfos = function() {
console.log(`Nome: ${this.nome}, Email: ${this.email}`);
};
}
const newUser = new User('Mariana', 'm@m.com');
newUser.exibeInfos(); // Output: Nome: Mariana, Email: m@m.com
Então, User
é a função construtora, e newUser
é um objeto criado a partir desse molde.
É como se User
fosse a forma de um bolo, e newUser
fosse um bolo feito com essa forma. 🍰
🎓 Para saber mais: Funções construtoras.
Continue praticando e explorando o mundo da programação! 💪