ExpertiDict

JavaScript · Essencial · Inglês · Técnico

new

/nu/operador

Operador que chama uma função como construtor: cria um objeto novo, liga seu protótipo, executa a função com this nele e devolve o objeto, salvo retorno explícito de outro.

Onde usar

Usado para instanciar classes, Date, Map e Promise. Em code review, esquecer o new numa função construtora antiga faz o this apontar para o global ou ser undefined.

Em código

function Pessoa(nome) { this.nome = nome; }
const p = new Pessoa('Ana');
console.log(p.nome);              // 'Ana'
console.log(p instanceof Pessoa); // true

Exemplos

You forgot the new, so this points to the global object.

Você esqueceu o new, então o this aponta para o objeto global.

A class can't be called without new.

Uma classe não pode ser chamada sem new.

Cuidado

Chamar uma classe sem new, o que lança TypeError.

Origem

Do inglês new, 'novo'.

Veja também

Todos os termos de JavaScript