Object.prototype.__lookupSetter__()

Не стандартно

Эта возможность не является стандартной и стандартизировать её пока никто не собирается. Не используйте её на сайтах, смотрящих во внешний мир: она будет работать не у всех пользователей. Также могут присутствовать большие несовместимости между реализациями и её поведение может в будущем измениться.

Устарело

Эта возможность была удалена из веб-стандартов. Хотя некоторые браузеры по-прежнему могут поддерживать её, она находится в процессе удаления. Не используйте её ни в старых, ни в новых проектах. Страницы или веб-приложения, использующие её, могут в любой момент сломаться.

Сводка

Метод __lookupSetter__() возвращает функцию, привязанную к сеттеру указанного свойства.

Синтаксис

obj.__lookupSetter__(sprop)

Параметры

sprop
Строка, содержащая имя свойства, чей сеттер должен быть возвращён.

Описание

Если для свойства объекта был определён сеттер, то на него невозможно сослаться через это свойство, поскольку оно ссылается на возвращаемое значение сеттера. Метод __lookupSetter__() может использоваться для получения ссылки на сеттер.

Сегодня это возможно сделать стандартным способом через Object.getOwnPropertyDescriptor().

Примеры

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


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


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

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

Не является частью какой-либо спецификации.

Совместимость с браузерами

BCD tables only load in the browser

Смотрите также