Есть ли у ES5 аналог __lookupGetter__? - PullRequest
6 голосов
/ 11 апреля 2011

Я знаю, Object.defineProperty - это весело и отличная замена нестандартным API __defineGetter__ и __defineSetter__, но есть ли аналогичный аналог для __lookupGetter__?Или какой-то способ достижения подобной вещи?

1 Ответ

8 голосов
/ 11 апреля 2011

Я не уверен в семантике __lookupGetter__, но ES5 предоставляет новый API Object.getOwnPropertyDescriptor, который дает вам объект дескриптора, содержащий атрибуты свойства и его value или его get и / или set функций.

например.

Object.getOwnPropertyDescriptor("foo", {get foo() { return 5} }).get

Даст вам функцию получения

...