Object.prototype.__lookupGetter__()

Deprecated
This feature has been removed from the Web standards. Though some browsers may still support it, it is in the process of being dropped. Do not use it in old or new projects. Pages or Web apps using it may break at any time.

The __lookupGetter__ method returns the function bound as a getter to the specified property.

Syntax

JavaScript
<var>obj</var>.__lookupGetter__(<var>sprop</var>)

Parameters

sprop
A string containing the name of the property whose getter should be returned.

Return value

The function bound as a getter to the specified property.

Description

If a getter has been defined for an object's property, it's not possible to reference the getter function through that property, because that property refers to the return value of that function. __lookupGetter__ can be used to obtain a reference to the getter function.

It is now possible to do this in a standardized way using Object.getOwnPropertyDescriptor() and Object.getPrototypeOf().

Examples

JavaScript
var obj = {
  get foo() {
    return Math.random() > 0.5 ? 'foo' : 'bar';
  }
};


// Non-standard and deprecated way
obj.__lookupGetter__('foo');
// (function() { return Math.random() > 0.5 ? 'foo' : 'bar'; })


// Standard-compliant way
Object.getOwnPropertyDescriptor(obj, "foo").get;
// (function() { return Math.random() > 0.5 ? 'foo' : 'bar'; })

Specifications

Specification Status Comment
ECMAScript 2017 Draft (ECMA-262)
The definition of 'Object.prototype.__lookupGetter__()' in that specification.
Draft Included in the (normative) annex for additional ECMAScript legacy features for Web browsers (note that the specification codifies what is already in implementations).

Browser compatibility

Feature Chrome Firefox (Gecko) Internet Explorer Opera Safari
Basic support (Yes) (Yes) 11 (Yes) (Yes)
Feature Android Chrome for Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Basic support (Yes) (Yes) (Yes) ? ? (Yes)

See also

License

© 2016 Mozilla Contributors
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-us/docs/web/javascript/reference/global_objects/object/__lookupgetter__

Deprecated JavaScript Method Object Prototype