Object.getPrototypeOf()

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.

O método Object.getPrototypeOf() retorna o prototype (isto é, o valor da propriedade interna [[Prototype]]) do objeto especificado.

Sintaxe

Object.getPrototypeOf(obj)

Parâmetros

obj

O objeto cujo prototype será retornado.

Exemplos

js
var proto = {};
var obj = Object.create(proto);
Object.getPrototypeOf(obj) === proto; // true

Notas

No ES5 será lançada uma exceção TypeError se o parâmetro obj não for um objeto. No ES6, no entanto, esse valor será submetido a um Object equivalente ao seu tipo e retornado.

js
Object.getPrototypeOf("foo");
// TypeError: "foo" não é um objeto (código ES5)
Object.getPrototypeOf("foo");
// String.prototype                  (código ES6)

Especificações

Specification
ECMAScript Language Specification
# sec-object.getprototypeof

Compatibilidade com navegadores

BCD tables only load in the browser

Notas específicas para o Opera

Embora as versões mais antigas do Opera não suportem Object.getPrototypeOf(), ele suporta a propriedade não oficial Object.prototype.__proto__ desde de a sua versão 10.50.

Veja também