この翻訳は不完全です。英語から この記事を翻訳 してください。

Object.getPrototypeOf() メソッドは指定したオブジェクトのプロトタイプ (要するに内部プロパティ[[Prototype]] の値)を返します。

構文

Object.getPrototypeOf(obj)

引数

obj
プロトタイプを取得したいオブジェクト。

Return value

指定されたオブジェクトのプロトタイプ。何も継承していないオブジェクトの場合はnull

Examples

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

Notes

ES5では引数 object がオブジェクトではない場合TypeErrorが投げられます。しかしES6(ES2015)では対応するラッパーオブジェクトに変換されてから処理されます。

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

仕様書

Specification Status Comment
ECMAScript 5.1 (ECMA-262)
Object.getPrototypeOf の定義
標準 Initial definition.
ECMAScript 2015 (6th Edition, ECMA-262)
Object.getProtoypeOf の定義
標準  
ECMAScript Latest Draft (ECMA-262)
Object.getProtoypeOf の定義
ドラフト  

ブラウザ互換性

機能ChromeEdgeFirefoxInternet ExplorerOperaSafari
基本対応5 あり3.5912.15
機能Android webviewChrome for AndroidEdge mobileFirefox for AndroidOpera AndroidiOS SafariSamsung Internet
基本対応 あり あり あり4 あり あり あり

Opera特有の注記

Object.getPrototypeOf() が 現行版 Opera サポートされていない場合でも、Opera 10.50 以降は非標準の __proto__ プロパティを備えており、これを代替として使用することが出来ます。

関連情報

ドキュメントのタグと貢献者

このページの貢献者: woodmix, lv7777, teoli, ethertank, Potappo
最終更新者: woodmix,