Web/JavaScript/Reference/Global objects/Object/ lookupGetter
DeprecatedThis feature is no longer recommended. Though some browsers might still support it, it may have already been removed from the relevant web standards, may be in the process of being dropped, or may only be kept for compatibility purposes. Avoid using it, and update existing code if possible; see the compatibility table at the bottom of this page to guide your decision. Be aware that this feature may cease to work at any time.
The __lookupGetter__ method returns the function bound as a getter to the specified property.
Syntax
obj.__lookupGetter__(sprop)
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
Standard-compliant and non-standard ways to get a property getter
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 |
|---|
| ECMAScript (ECMA-262)The definition of 'Object.prototype.__lookupGetter__()' in that specification. |
Browser compatibility
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.
Update compatibility data on GitHub
| Desktop | Mobile | Server | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
|
Chrome
Full support 1 |
Edge
Full support 12 |
Firefox
Full support 1 |
IE
Full support 11 |
Opera
Full support 9.5 |
Safari
Full support 3 |
WebView Android
Full support 1 |
Chrome Android
Full support 18 |
Firefox Android
Full support 4 |
Opera Android
Full support 10.1 |
Safari iOS
Full support 1 |
Samsung Internet Android
Full support 1.0 |
nodejs
Full support Yes |
Legend
- Full support
- Full support
- Deprecated. Not for use in new websites.'
- Deprecated. Not for use in new websites.
See also
Object.prototype.__lookupSetter__()getoperatorObject.getOwnPropertyDescriptor()andObject.getPrototypeOf()Object.prototype.__defineGetter__()Object.prototype.__defineSetter__()- JS Guide: Defining Getters and Setters
Object.prototype.__lookupGetter__() by Mozilla Contributors is licensed under CC-BY-SA 2.5.