Object.getPrototypeOf() - JavaScript | MDN

Baseline Widely available

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

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

試してみましょう

const prototype = {};
const object = Object.create(prototype);

console.log(Object.getPrototypeOf(object) === prototype);
// 予想される結果: true

構文

js

Object.getPrototypeOf(obj)

引数

obj

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

返値

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

getPrototypeOf の使用

js

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

オブジェクト以外の型変換

ES5 では引数 obj がオブジェクトではない場合 TypeError が発生します。しかし ES2015 では対応する Object に変換されてから処理されます。

js

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

仕様書

Specification
ECMAScript® 2026 Language Specification
# sec-object.getprototypeof

ブラウザーの互換性

関連情報

Help improve MDN

Learn how to contribute

This page was last modified on by MDN contributors.