Object.prototype.__lookupSetter__()

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. 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 __lookupSetter__ method returns the function bound as a setter to the specified property.

Syntax

obj.__lookupSetter__(sprop)

Parameters

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

Return value

The function bound as a setter to the specified property.

Description

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

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

Examples

var obj = {
  set foo(value) {
    this.bar = value;
  }
};
// Non-standard and deprecated way
obj.__lookupSetter__('foo')
// (function(value) { this.bar = value; })
// Standard-compliant way
Object.getOwnPropertyDescriptor(obj, 'foo').set;
// (function(value) { this.bar = value; })

Specifications

Specification Status Comment
ECMAScript Latest Draft (ECMA-262)
The definition of 'Object.prototype.__lookupSetter__()' 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 Edge Firefox (Gecko) Internet Explorer Opera Safari
Basic support (Yes) (Yes) (Yes) 11 (Yes) (Yes)
Feature Android Chrome for Android Edge Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Basic support (Yes) (Yes) (Yes) (Yes) ? ? (Yes)

See also

Document Tags and Contributors

 Last updated by: jameshkramer,