Object.prototype.__lookupSetter__()

Deprecated
This 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.

Метод __lookupSetter__ повертає функцію, прив'язану в якості сетера вказаної властивості.

Синтаксис

obj.__lookupSetter__(sprop)

Параметри

sprop
Рядок, що містить ім'я властивості, сетер якої має бути повернений.

Значення, що повертається

Функція, прив'язана в якості сетера до вказаної властивості.

Опис

Якщо для властивості об'єкта був визначений сетер, неможливо отримати посилання на функцію-сетер через цю властивість, оскільки властивість посилається на значення, яке повертає функція-гетер. Методом __lookupSetter__ можна отримати посилання на функцію-сетер.

Зараз це стало можливо робити стандартизованим засобом, через Object.getOwnPropertyDescriptor().

Приклади

var obj = {
  set foo(value) {
    this.bar = value;
  }
};


// Нестандартний та не рекомендований спосіб
obj.__lookupSetter__('foo')
// (function(value) { this.bar = value; })


// Стандартний спосіб
Object.getOwnPropertyDescriptor(obj, 'foo').set;
// (function(value) { this.bar = value; })

Специфікації

Специфікація Статус Коментар
ECMAScript Latest Draft (ECMA-262)
The definition of 'Object.prototype.__lookupSetter__()' in that specification.
Draft Включено у (нормативний) додаток для додаткової legacy-функціональності ECMAScript для веб-переглядачів (зауважте, що специфікація кодифікує те, що вже реалізовано).

Сумісність з веб-переглядачами

Update compatibility data on GitHub
DesktopMobileServer
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewChrome for AndroidFirefox for AndroidOpera for AndroidSafari on iOSSamsung InternetNode.js
__lookupSetter__
Deprecated
Chrome Full support YesEdge Full support 12Firefox Full support 1IE Full support 11Opera Full support YesSafari Full support YesWebView Android Full support YesChrome Android Full support YesFirefox Android Full support 4Opera Android Full support YesSafari iOS Full support YesSamsung Internet Android Full support Yesnodejs Full support Yes

Legend

Full support  
Full support
Deprecated. Not for use in new websites.
Deprecated. Not for use in new websites.

Див. також