Object.getPrototypeOf()

Resumen

El método Object.getPrototypeOf() devuelve el prototipo (es decir, el valor de la propiedad interna [[Prototype]]) del objeto especificado.

Sintaxis

Object.getPrototypeOf(obj)

Parámetros

obj
El objeto cuyo prototipo va a ser devuelto.

Valor Devuelto

El prototipo del objeto dado. Si no existen propiedades heredadas se devolverá null.

Ejemplos

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

Notas

En ES5, lanzará una excepción TypeError (en-US) si el parámetro obj no es un objeto. en ES6, El parámetro será forzado a un Object.

> Object.getPrototypeOf('foo')
TypeError: "foo" is not an object  // ES5 code
> Object.getPrototypeOf('foo')
String.prototype                   // ES6 code

Especificaciones

Especificación Estado Comentario
ECMAScript 5.1 (ECMA-262)
La definición de 'Object.getPrototypeOf' en esta especificación.
Standard Definición inicial.
ECMAScript 2015 (6th Edition, ECMA-262)
La definición de 'Object.getProtoypeOf' en esta especificación.
Standard  

Compatibilidad con navegadores

We're converting our compatibility data into a machine-readable JSON format. This compatibility table still uses the old format, because we haven't yet converted the data it contains. Find out how you can help! (en-US)
Característica Chrome Firefox (Gecko) Internet Explorer Opera Safari
Soporte básico 5 3.5 (1.9.1) 9 12.10 (tal vez en las últimas versiones) 5
Característica Android Chrome for Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Soporte básico ? ? ? ? ? ?

Based on Kangax's compat table.

Notas espécificas sobre Opera

A pesar de que las versiones anteriores de opera no soportan aun Object.getPrototypeOf(), Opera soporta la propiedad no estándar __proto__ desde Opera 10.50.

Mira también