Object.prototype.__lookupGetter__()
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.>
Не стандартно: Эта функция не стандартизирована. Мы не рекомендуем использовать нестандартные функции в действующих проектах, так как их поддержка браузерами ограничена, а поведение может измениться или быть удалено. Тем не менее, в некоторых случаях, когда нет стандартного решения, они могут быть подходящей альтернативой.
Сводка
Метод __lookupGetter__() возвращает функцию, привязанную к геттеру указанного свойства.
Синтаксис
obj.__lookupGetter__(sprop)
Параметры
sprop-
Строка, содержащая имя свойства, чей геттер должен быть возвращён.
Описание
Если для свойства объекта был определён геттер, то на него невозможно сослаться через это свойство, поскольку оно ссылается на возвращаемое значение геттера. Метод __lookupGetter__() может использоваться для получения ссылки на геттер.
Сегодня это возможно сделать стандартным способом через Object.getOwnPropertyDescriptor() и Object.getPrototypeOf().
Примеры
var obj = {
get foo() {
return Math.random() > 0.5 ? "foo" : "bar";
},
};
// Нестандартный и устаревший способ
obj.__lookupGetter__("foo");
// (function() { return Math.random() > 0.5 ? 'foo' : 'bar'; })
// Способ, совместимый со стандартом
Object.getOwnPropertyDescriptor(obj, "foo").get;
// (function() { return Math.random() > 0.5 ? 'foo' : 'bar'; })
Спецификации
Не является частью какой-либо спецификации.