Object.getPrototypeOf() method returns the prototype (i.e. the value of the internal [[Prototype]] property) of the specified object.

The source for this interactive example is stored in a GitHub repository. If you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and send us a pull request.

句法

Object.getPrototypeOf(obj)
					

参数

obj

The object whose prototype is to be returned.

返回值

The prototype of the given object. If there are no inherited properties, null 被返回。

范例

Using getPrototypeOf

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

Non-object coercion

In ES5, it will throw a TypeError exception if the obj parameter isn't an object. In ES2015, the parameter will be coerced to an Object .

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

规范

规范
ECMAScript (ECMA-262)
The definition of 'Object.getPrototypeOf' in that specification.

浏览器兼容性

The compatibility table on this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request. 更新 GitHub 上的兼容性数据
Desktop Mobile Server
Chrome Edge Firefox Internet Explorer Opera Safari Android webview Chrome for Android Firefox for Android Opera for Android Safari on iOS Samsung Internet Node.js
getPrototypeOf Chrome 5 Edge 12 Firefox 3.5 IE 9 Opera 12.1 Safari 5 WebView Android 1 Chrome Android 18 Firefox Android 4 Opera Android 12.1 Safari iOS 5 Samsung Internet Android 1.0 nodejs Yes

图例

完整支持

完整支持

Opera-specific notes

Even though older Opera versions don't support Object.getPrototypeOf() yet, Opera supports the non-standard __proto__ property since Opera 10.50.

另请参阅

元数据

  • 最后修改: