No JavaScript os objetos tem links para outros objetos, conhecidos como prototypes, cada um deles tem suas propriedades e métodos
Prototypes são objetos, e tem suas próprias propriedades, objetos formam um corrente de herança (inheritance chain), que segue funcionalidades complexas para serem definidas uma vez e usada consistentemente
Inspecionando e Modificando o prototype de um objeto
Object é um prototype para muitos objetos, mas isso também prove alguns metodos que são usados diretamente, pela herança e que também será usado para obter informação sobre o prototype
Alguns métodos:
Nome do Método
Descrição da Função
getPrototypeOf
Retorna o protótipo (o objeto ou null) do objeto especificado.
setPrototypeOf
Altera o protótipo (o objeto interno [[Prototype]]) de um objeto especificado para outro objeto ou null.
getOwnPropertyNames
Retorna um array contendo os nomes de todas as propriedades próprias (não herdadas) e enumeráveis ou não enumeráveis de um objeto.