Сводка

Метод Object.getPrototypeOf() возвращает прототип (то есть, внутреннее свойство [[Prototype]]) указанного объекта.

Синтаксис

Object.getPrototypeOf(obj)

Параметры

obj
Объект, чей прототип будет возвращён.

Примеры

var proto = {};
var obj = Object.create(proto);
Object.getPrototypeOf(obj) === proto; // true
> Object.getPrototypeOf('foo')
TypeError: "foo" is not an object  // код ES5
> Object.getPrototypeOf('foo')
String.prototype                   // код ES6

Примечания

В ES5, если параметр obj не является объектом, будет выброшено исключение TypeError. В ES6, параметр будет приведён к объекту Object.

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

Спецификации

Спецификация Статус Комментарии
ECMAScript 5.1 (ECMA-262)
Определение 'Object.getPrototypeOf' в этой спецификации.
Стандарт Изначальное определение.
ECMAScript 2015 (6th Edition, ECMA-262)
Определение 'Object.getProtoypeOf' в этой спецификации.
Стандарт  

Совместимость с браузерами

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!

Возможность Chrome Firefox (Gecko) Internet Explorer Opera Safari
Базовая поддержка 5 3.5 (1.9.1) 9 12.10 (может быть и более ранние) 5
Возможность Android Chrome для Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Базовая поддержка ? ? ? ? ? ?

На основе таблицы совместимости Kangax.

Примечания по Opera

Хотя старые версии Opera и не поддерживают меотод Object.getPrototypeOf(), Opera поддерживает нестандартное свойство __proto__, начиная с версии Opera 10.50.

Смотрите также

Метки документа и участники

Внесли вклад в эту страницу: tonyganch, Mingun, Natalya_Surikova
Обновлялась последний раз: tonyganch,