Object.prototype.__lookupSetter__()
Deprecated
Avoid using this feature in new projects. TC39 included accessor methods in Annex B of the ECMAScript specification, which covers JavaScript features with "one or more undesirable characteristics and in the absence of legacy usage would be removed." This feature may be a candidate for removal from web standards or browsers.>
Не стандартно: Эта функция не стандартизирована. Мы не рекомендуем использовать нестандартные функции в действующих проектах, так как их поддержка браузерами ограничена, а поведение может измениться или быть удалено. Тем не менее, в некоторых случаях, когда нет стандартного решения, они могут быть подходящей альтернативой.
Сводка
Метод __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; })
Спецификации
Не является частью какой-либо спецификации.