ExpertiDict

JavaScript · Intermediário · Português · Técnico

protótipo

/pɾoˈtɔtʃipu/substantivo

Objeto ao qual outro objeto está ligado para herdar propriedades e métodos. Quando uma propriedade não é achada no objeto, a busca continua no protótipo dele.

Onde usar

É o mecanismo de herança do JavaScript, por trás das classes. Em code review, aparece ao estender tipos nativos ou ao depurar de onde veio um método.

Em código

function Cao() {}
Cao.prototype.late = function () {
  return 'au';
};
const c = new Cao();
console.log(c.late()); // 'au'
const proto = Object.getPrototypeOf(c);
console.log(proto === Cao.prototype);

Exemplos

O método não está no objeto, está no protótipo dele.

Alterar o protótipo afeta todas as instâncias já criadas.

Cuidado

Confundir a propriedade prototype das funções com o protótipo interno de um objeto, acessível por Object.getPrototypeOf.

Sinônimos

prototype

Origem

Do grego prototypos, 'primeiro modelo'.

Veja também

Todos os termos de JavaScript