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 (ECMA-262)
The definition of 'Object.prototype.__lookupSetter__()' in that specification.
Living Standard Включено у (нормативний) додаток для додаткової legacy-функціональності ECMAScript для веб-переглядачів (зауважте, що специфікація кодифікує те, що вже реалізовано).

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

BCD tables only load in the browser

Див. також