Bom dia,
Qual é a diferença de usar o new em um objeto?Exemplo:
var Pessoa = function() {
}
console.log(new Pessoa(), Pessoa());
Fiquei confuso com essa pergunta, obrigado.
Bom dia,
Qual é a diferença de usar o new em um objeto?Exemplo:
var Pessoa = function() {
}
console.log(new Pessoa(), Pessoa());
Fiquei confuso com essa pergunta, obrigado.
Quando vc faz Pessoa()
sem o new vc nao cria um objeto, vc apenas invoca a funcao Pessoa. Se ela retornar alguma coisa, esse retorno sera devolvido pra vc. Pode ser qq coisa.
Ja com new Pessoa()
um objeto novo é chamado (e a funcao Pessoa tbm, que serve como construtora). Nesse caso, o retorno é sempre o novo objeto Pessoa (nao rola dar return na funcao). Alem disso, como vc tem um novo objeto, vc tem acesso ao this
que representa esse objeto, onde vc pode pendurar atributos/métodos.
Obrigado Sérgio!