Join MDN and developers like you at Mozilla's View Source conference, 12-14 September in Berlin, Germany. Learn more at https://viewsourceconf.org

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 __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 2017 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 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

Document Tags and Contributors

 Last updated by: eduardoboucas,